time="2024-08-28T08:56:18Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-experiment-1 Creating Container integration-test-federation-1 Creating Container integration-test-gateway-1 Creating Container integration-test-authentication-1 Creating Container integration-test-authorization-1 Creating Container integration-test-device-1 Creating Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Container integration-test-gateway-1 Created Container integration-test-device-1 Created Container integration-test-authorization-1 Created Container integration-test-authentication-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 authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-08-28T08:56:49Z"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:43616","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-08-28T08:56:50Z"} authorization-1 | {"client_addr":"127.0.0.1:43616","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.258179,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:56:50Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1724835410.4405873} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1724835410.440678} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1724835410.440706} 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":1724835410.4407327} 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":1724835410.4407606} 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":1724835410.4408052,"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":1724835410.4433322} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1724835410.444252} 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:59416","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-08-28T08:56:50.456519266Z","id":"01J6C37CGRK57W0VZH5X192EZ1","name":"crosslab","updated_at":"2024-08-28T08:56:50.456519266Z"},"request_id":"a751873f-bda3-4dc4-9927-625727b4cb36","subsystem":"openfga","timestamp":1724835410.4565992} 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:59416","raw_request":{"schema_version":"1.1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J6C37CHZVNQPEVXC1B7GVY70"},"request_id":"00ca649e-9dee-4643-876a-4abdf545e260","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835410.4957397} authorization-1 | {"client_addr":"127.0.0.1:43616","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-08-28T08:56:50Z"} authorization-1 | {"client_addr":"127.0.0.1:43616","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.240964,"resp_status":204,"subsystem":"opa","time":"2024-08-28T08:56:50Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.67.1/opa_linux_amd64","latest_version":"0.67.1","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.67.1","subsystem":"opa","time":"2024-08-28T08:56:50Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.020","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"5297df73dcceb4be096af4e7eb0c310e"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 13ms","method":"HEAD","requestID":"5297df73dcceb4be096af4e7eb0c310e","responseTime":13,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"28/Aug/2024:08:57:02 +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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"d0e1b6d1ac01e4304c3a7748a3021f9b"} device-1 | {"level":"info","message":"HEAD /device/status 200 10ms","method":"HEAD","requestID":"7dcf1360-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"28/Aug/2024:08:57:02 +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.009","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"786158f46099327a15bddb6ef68e3726"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 5ms","method":"HEAD","requestID":"786158f46099327a15bddb6ef68e3726","responseTime":5,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"28/Aug/2024:08:57:02 +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.022","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"26c45d37e3a183e976908146ccc45694"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 15ms","method":"HEAD","requestID":"7dd57c00-651b-11ef-b4ed-8be748d59db1","responseTime":15,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"28/Aug/2024:08:57:02 +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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"6085327b81fc0af98079bf0fd8c91708"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 10ms","method":"HEAD","requestID":"7dd92580-651b-11ef-bd25-8703ede36d18","responseTime":10,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"28/Aug/2024:08:57:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8659ffdd3cc024bc2747a8b98dad256f"} authentication-1 | {"level":"info","message":"POST /login 201 107ms","method":"POST","requestID":"8659ffdd3cc024bc2747a8b98dad256f","responseTime":107,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQyN30.rXy0p5rj41EKoFMu3Fps22lvSlq5lOsnggpM8AN2eF0","level":"info","message":"auth send jwt","requestID":"7981070a36c798ba4523a5a258f09d33"} authentication-1 | {"level":"info","message":"GET /auth 200 21ms","method":"GET","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":21,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7981070a36c798ba4523a5a258f09d33"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.357122,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7981070a36c798ba4523a5a258f09d33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835427,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQyN30.rXy0p5rj41EKoFMu3Fps22lvSlq5lOsnggpM8AN2eF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"63ba4098-ae41-44a1-82a8-05ff4b058eb0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.3334868} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d30f741-f1fc-4fb7-8863-fc83be59d330","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.3525515} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"79448951-fb93-4fe8-a5bb-5ed3c9bdcb09","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.3711588} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b635c10-6339-462d-8589-95f2625529b3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.3726788} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.371132145Z"}]},"request_id":"4e077143-104d-4dee-bad2-07403b3a1615","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.3834476} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7981070a36c798ba4523a5a258f09d33"} gateway-1 | {"time_local":"28/Aug/2024:08:57:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.268","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7981070a36c798ba4523a5a258f09d33"} device-1 | {"level":"info","message":"POST /devices? 201 233ms","method":"POST","requestID":"7981070a36c798ba4523a5a258f09d33","responseTime":233,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQyN30.rXy0p5rj41EKoFMu3Fps22lvSlq5lOsnggpM8AN2eF0","level":"info","message":"auth send jwt","requestID":"f8cd9311397c295efe45bdcc201f774d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f8cd9311397c295efe45bdcc201f774d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f8cd9311397c295efe45bdcc201f774d"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:07Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.770037,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f8cd9311397c295efe45bdcc201f774d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835427,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQyN30.rXy0p5rj41EKoFMu3Fps22lvSlq5lOsnggpM8AN2eF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0c553254-3589-48e2-8010-123fa8d6c988","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.450712} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1a8f14d-b27a-426c-a5c8-02c110599334","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.4601681} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"a704d813-871f-4ae5-be69-bf33a66ba210","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.474074} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f70401a4-1d94-4521-b53a-5824faec5d4b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.474177} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.474063473Z"}]},"request_id":"fd7c7148-1df2-410e-9ce6-3b09bf9392f2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835427.482231} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f8cd9311397c295efe45bdcc201f774d"} gateway-1 | {"time_local":"28/Aug/2024:08:57:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8cd9311397c295efe45bdcc201f774d"} device-1 | {"level":"info","message":"POST /devices? 201 63ms","method":"POST","requestID":"f8cd9311397c295efe45bdcc201f774d","responseTime":63,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6509f2c6f82169eb68ad2622be94ab0b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6509f2c6f82169eb68ad2622be94ab0b","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eda3f211d9bcfd9bcfa745c4ae9ad725","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/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":"6509f2c6f82169eb68ad2622be94ab0b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eda3f211d9bcfd9bcfa745c4ae9ad725","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/websocket 200 2ms","method":"OPTIONS","requestID":"6509f2c6f82169eb68ad2622be94ab0b","responseTime":2,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.007","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"eda3f211d9bcfd9bcfa745c4ae9ad725"} device-1 | {"level":"info","message":"OPTIONS /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket 200 1ms","method":"OPTIONS","requestID":"eda3f211d9bcfd9bcfa745c4ae9ad725","responseTime":1,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"41e48e57f2f9f4d84706c0b04425b702"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"41e48e57f2f9f4d84706c0b04425b702","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"a18c949f08790282acc9dc924dd9625d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"41e48e57f2f9f4d84706c0b04425b702"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"a18c949f08790282acc9dc924dd9625d","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a18c949f08790282acc9dc924dd9625d"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802296,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"41e48e57f2f9f4d84706c0b04425b702","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41e48e57f2f9f4d84706c0b04425b702","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.921596,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a18c949f08790282acc9dc924dd9625d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a18c949f08790282acc9dc924dd9625d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a18c949f08790282acc9dc924dd9625d"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket 200 29ms","method":"POST","requestID":"a18c949f08790282acc9dc924dd9625d","responseTime":29,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a18c949f08790282acc9dc924dd9625d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"41e48e57f2f9f4d84706c0b04425b702"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.125","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"41e48e57f2f9f4d84706c0b04425b702"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/websocket 200 115ms","method":"POST","requestID":"41e48e57f2f9f4d84706c0b04425b702","responseTime":115,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"161ae3777bdac73b63c7d412b3a01d3a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"161ae3777bdac73b63c7d412b3a01d3a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"161ae3777bdac73b63c7d412b3a01d3a"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770193,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"161ae3777bdac73b63c7d412b3a01d3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"161ae3777bdac73b63c7d412b3a01d3a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.371132145Z"}]},"request_id":"a6a08469-6829-49d1-95b0-43768609c503","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.3597558} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"161ae3777bdac73b63c7d412b3a01d3a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"161ae3777bdac73b63c7d412b3a01d3a"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? 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":"161ae3777bdac73b63c7d412b3a01d3a"} device-1 | {"level":"info","message":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? 200 25ms","method":"GET","requestID":"161ae3777bdac73b63c7d412b3a01d3a","responseTime":25,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"0534f1e2ac29aa923c44fe3795a70045"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0534f1e2ac29aa923c44fe3795a70045","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0534f1e2ac29aa923c44fe3795a70045"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.794653,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0534f1e2ac29aa923c44fe3795a70045","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0534f1e2ac29aa923c44fe3795a70045","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.474063473Z"}]},"request_id":"9d2f55d8-8b24-41fa-a5d5-9ac3f1ed9d9e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.3914595} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0534f1e2ac29aa923c44fe3795a70045","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0534f1e2ac29aa923c44fe3795a70045"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 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":"0534f1e2ac29aa923c44fe3795a70045"} device-1 | {"level":"info","message":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 200 18ms","method":"GET","requestID":"0534f1e2ac29aa923c44fe3795a70045","responseTime":18,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"aa98f20b293da49691ae971aedfede85"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa98f20b293da49691ae971aedfede85","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"aa98f20b293da49691ae971aedfede85"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.791873,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa98f20b293da49691ae971aedfede85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aa98f20b293da49691ae971aedfede85","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to run experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to book experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully booked experiment","requestID":"aa98f20b293da49691ae971aedfede85"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82eae810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678493,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"82eae810-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"82eae810-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.191469,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.371132145Z"}]},"request_id":"b13b0ca5-7111-426d-95ed-7dc86a9ecef0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.6885753} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"82eae810-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.474063473Z"}]},"request_id":"d06327ae-ed76-43fa-b87f-a046883b5dca","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.6919522} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82eae810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? 200 25ms","method":"GET","requestID":"82eae810-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 200 25ms","method":"GET","requestID":"82eb3630-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Setting up experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully set up experiment","requestID":"aa98f20b293da49691ae971aedfede85"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83006be0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.03242,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"83006be0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully running experiment","requestID":"aa98f20b293da49691ae971aedfede85"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"83006be0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83012f30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905196,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.638458,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b54384e3-c9c9-4acf-98d3-3855d16ff9e9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8318584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.474063473Z"}]},"request_id":"04c3a954-a4b0-413e-9417-30b571e5421c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8329527} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"83012f30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","rebac_allow":false,"scope_allow":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":"83012f30-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.371132145Z"}]},"request_id":"1127eb06-21b5-4908-adc0-df0d1faa7e37","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.837635} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83006be0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83012f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling 200 23ms","method":"POST","requestID":"83012f30-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 200 31ms","method":"GET","requestID":"8300ba00-651b-11ef-b0da-d12cff5a1914","responseTime":31,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83059c00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83006be0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? 200 37ms","method":"GET","requestID":"83006be0-651b-11ef-b0da-d12cff5a1914","responseTime":37,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f?"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.647326,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"539b4ef4-4e55-468e-a626-0868ceba2b88","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8540077} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a7ec55c-0e1d-41b2-b5fc-edda0843d37f#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"a3e760ab-6c13-4f35-9d87-b2405815f65a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8564951} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8306fb90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"83059c00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","rebac_allow":false,"scope_allow":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":"83059c00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"103ef61d-01bb-45ea-b992-aefc14133bd2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8568232} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83059c00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling 200 14ms","method":"POST","requestID":"83059c00-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"aa98f20b293da49691ae971aedfede85","responseTime":36,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5e54611-dc78-40e7-993f-5ef88a8bb76e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8669646} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.605907,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8306fb90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","rebac_allow":false,"scope_allow":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":"8306fb90-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"aa98f20b293da49691ae971aedfede85"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8306fb90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling 200 18ms","method":"POST","requestID":"8306fb90-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.475","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"level":"info","message":"POST /experiments? 201 458ms","method":"POST","requestID":"aa98f20b293da49691ae971aedfede85","responseTime":458,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"830acc20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"76754a7c3c521dca8f300a67b7148afd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"76754a7c3c521dca8f300a67b7148afd","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"591c51bc-bccb-4f65-bba3-458b0d27cbab","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8871887} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76754a7c3c521dca8f300a67b7148afd"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526639,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"830acc20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"830acc20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879629,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"76754a7c3c521dca8f300a67b7148afd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76754a7c3c521dca8f300a67b7148afd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"830acc20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling 200 11ms","method":"POST","requestID":"830acc20-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Building connection plan","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"b60a6e6d-3511-4ae2-be7f-59fcd7ba8752"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"6fb9850e-6016-476b-a6a0-5e60ef5f94c7"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"4aac0709-fb1a-4a00-b6f2-a4899a9ed89d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"aa98f20b293da49691ae971aedfede85"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"aa98f20b293da49691ae971aedfede85"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.371132145Z"}]},"request_id":"0c3154b0-a794-4b40-ad44-e9be5561801d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.8998797} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76754a7c3c521dca8f300a67b7148afd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76754a7c3c521dca8f300a67b7148afd"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.674969,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76754a7c3c521dca8f300a67b7148afd"} device-1 | {"level":"info","message":"GET /devices/c133426c-23ac-4340-bcbf-57efde7eb32f? 200 48ms","method":"GET","requestID":"76754a7c3c521dca8f300a67b7148afd","responseTime":48,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"830e0070-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914","responseTime":30,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ","level":"info","message":"auth send jwt","requestID":"8a55ff200b5b4ede5ae5393b08a2e557"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8a55ff200b5b4ede5ae5393b08a2e557","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a55ff200b5b4ede5ae5393b08a2e557"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682283,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8a55ff200b5b4ede5ae5393b08a2e557","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835430,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMH0.H8SJS9JiC9cIO8e7CZOB8g0IdDnemOsOBW_frfMSIRQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a55ff200b5b4ede5ae5393b08a2e557","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:07.474063473Z"}]},"request_id":"cc06e816-78f2-4e1d-9fbd-9ba030d41ab8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.9527385} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a55ff200b5b4ede5ae5393b08a2e557","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a55ff200b5b4ede5ae5393b08a2e557"} gateway-1 | {"time_local":"28/Aug/2024:08:57:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 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":"8a55ff200b5b4ede5ae5393b08a2e557"} device-1 | {"level":"info","message":"GET /devices/13c9d8f3-c683-415a-97d8-587155c16bc2? 200 15ms","method":"GET","requestID":"8a55ff200b5b4ede5ae5393b08a2e557","responseTime":15,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"1945986a-8024-4e5c-8fea-37328d49b179","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.9631104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70f5b90d-0ffc-4801-b07d-50efd21117a0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835430.9632473} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1'","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1'","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 88ms","method":"POST","requestID":"830e0070-651b-11ef-b0da-d12cff5a1914","responseTime":88,"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":"830e0070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","device":"13c9d8f3-c683-415a-97d8-587155c16bc2","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/ddf109a7-8de0-440e-bfee-b3967c400fd1","device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"aa98f20b293da49691ae971aedfede85"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83258010-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee7260ad-6946-4801-b896-5c01412c2c6b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.0629005} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.783648,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"83258010-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","rebac_allow":false,"scope_allow":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":"83258010-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83258010-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling 200 18ms","method":"POST","requestID":"83258010-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8328db70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae3e5970-7c9e-4216-ab13-7494eca2f0b8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.0855374} device-1 | {"content":{"sdp":"v=0\r\no=- 7039362982298937092 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:AJql\r\na=ice-pwd:Lp8ZvGdxlfljaU700//JGEsf\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:7D:9B:15:45:1F:AA:31:B1:1A:14:3E:B3:F8:DC:EC:AF:6A:C1:EF:D7:AE:1A:A2:47:D9:B1:93:7D:B3:47:80\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.838895,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8328db70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","rebac_allow":false,"scope_allow":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":"8328db70-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8328db70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling 200 14ms","method":"POST","requestID":"8328db70-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7315560320703696286 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:tHa5\r\na=ice-pwd:qvuh5aVOZZgSmfZSKknaWktc\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B4:D4:FD:96:99:AD:8C:54:9C:E1:7F:B8:5E:D3:5F:1A:5E:B6:F2:11:5B:8C:85:C1:7A:FA:4E:18:B7:2F:8C:5E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:427343158 1 udp 2113937151 62735e51-f04b-48e7-9a1d-a71251ffcfc4.local 56360 typ host generation 0 ufrag tHa5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","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/13c9d8f3-c683-415a-97d8-587155c16bc2'"} device-1 | {"content":{"candidate":"candidate:2639648585 1 udp 1677729535 141.24.211.56 56360 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tHa5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1834982096 1 udp 2113937151 394f69e8-b59f-4f9e-b317-ececabe0a3b6.local 56531 typ host generation 0 ufrag AJql network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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/13c9d8f3-c683-415a-97d8-587155c16bc2'"} device-1 | {"content":{"candidate":"candidate:3916624047 1 udp 1677729535 141.24.211.56 56531 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag AJql network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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/c133426c-23ac-4340-bcbf-57efde7eb32f'"} device-1 | {"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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/ddf109a7-8de0-440e-bfee-b3967c400fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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":"f11f06e3c0c810b88b8b4ac6a76498c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f11f06e3c0c810b88b8b4ac6a76498c1","responseTime":7,"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/13c9d8f3-c683-415a-97d8-587155c16bc2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"}}},"level":"info","message":"received a callback","requestID":"f11f06e3c0c810b88b8b4ac6a76498c1"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 21ms","method":"POST","requestID":"f11f06e3c0c810b88b8b4ac6a76498c1","responseTime":21,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"f11f06e3c0c810b88b8b4ac6a76498c1"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","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/ddf109a7-8de0-440e-bfee-b3967c400fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2babfd9d25c5b17cc17c43f6322feeac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2babfd9d25c5b17cc17c43f6322feeac","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/13c9d8f3-c683-415a-97d8-587155c16bc2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"}}},"level":"info","message":"received a callback","requestID":"2babfd9d25c5b17cc17c43f6322feeac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M","level":"info","message":"auth send jwt","requestID":"f238c52c15920618a9326249511d53a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"834256e0-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f238c52c15920618a9326249511d53a5","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"f238c52c15920618a9326249511d53a5"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fddf109a7-8de0-440e-bfee-b3967c400fd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ea82cd9-0ee3-4b59-9af1-5308387ac773","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.25328} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.571124,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.985736,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"834256e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","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":"834256e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f238c52c15920618a9326249511d53a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f238c52c15920618a9326249511d53a5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"834256e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1 200 15ms","method":"GET","requestID":"834256e0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"f238c52c15920618a9326249511d53a5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f HTTP/1.1","status": "200","body_bytes_sent":"878","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f238c52c15920618a9326249511d53a5"} experiment-1 | {"level":"info","message":"GET /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f 200 32ms","method":"GET","requestID":"f238c52c15920618a9326249511d53a5","responseTime":32,"status":200,"url":"/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 64ms","method":"POST","requestID":"2babfd9d25c5b17cc17c43f6322feeac","responseTime":64,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch","requestID":"2babfd9d25c5b17cc17c43f6322feeac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"834ae260-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e07078fc-0c84-4994-8bbe-38d004256dc6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.3078134} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912104,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"834ae260-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","rebac_allow":false,"scope_allow":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":"834ae260-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"834ae260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling 200 11ms","method":"POST","requestID":"834ae260-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"834d0540-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64866f05-672b-4c08-aaf9-1ee74c68b20b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.3217604} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.198503,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"834d0540-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","rebac_allow":false,"scope_allow":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":"834d0540-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"834d0540-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling 200 10ms","method":"POST","requestID":"834d0540-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M","level":"info","message":"auth send jwt","requestID":"1b611cc882a879f96d0491164d30b2a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b611cc882a879f96d0491164d30b2a5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"1b611cc882a879f96d0491164d30b2a5"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.779689,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1b611cc882a879f96d0491164d30b2a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b611cc882a879f96d0491164d30b2a5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"1b611cc882a879f96d0491164d30b2a5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b611cc882a879f96d0491164d30b2a5"} experiment-1 | {"level":"info","message":"GET /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f 200 38ms","method":"GET","requestID":"1b611cc882a879f96d0491164d30b2a5","responseTime":38,"status":200,"url":"/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M","level":"info","message":"auth send jwt","requestID":"70fad43bf04e342299fb9c3ecf86b29c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"70fad43bf04e342299fb9c3ecf86b29c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"70fad43bf04e342299fb9c3ecf86b29c"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702833,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"70fad43bf04e342299fb9c3ecf86b29c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70fad43bf04e342299fb9c3ecf86b29c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Attempting to finish experiment","requestID":"70fad43bf04e342299fb9c3ecf86b29c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8360db60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.692172,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8360db60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8360db60-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","device":"13c9d8f3-c683-415a-97d8-587155c16bc2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1","device":"c133426c-23ac-4340-bcbf-57efde7eb32f","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/ddf109a7-8de0-440e-bfee-b3967c400fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96ed464359bb47e3fcaec70c8ed960d1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"96ed464359bb47e3fcaec70c8ed960d1","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2938b2920c95ea69c14c44bcd45bd8fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/13c9d8f3-c683-415a-97d8-587155c16bc2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"}}},"level":"info","message":"received a callback","requestID":"96ed464359bb47e3fcaec70c8ed960d1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2938b2920c95ea69c14c44bcd45bd8fa","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/13c9d8f3-c683-415a-97d8-587155c16bc2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"}}},"level":"info","message":"received a callback","requestID":"2938b2920c95ea69c14c44bcd45bd8fa"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fddf109a7-8de0-440e-bfee-b3967c400fd1': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fddf109a7-8de0-440e-bfee-b3967c400fd1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"10f63b70-47ab-4a89-9184-fee98641c709","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.4797006} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f75255ef-08fb-4b32-b70a-1ca4a7dbb9b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.479906} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8360db60-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ddf109a7-8de0-440e-bfee-b3967c400fd1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8360db60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1 204 60ms","method":"DELETE","requestID":"8360db60-651b-11ef-b0da-d12cff5a1914","responseTime":60,"status":204,"url":"/peerconnections/ddf109a7-8de0-440e-bfee-b3967c400fd1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"},"level":"info","message":"Successfully finished experiment","requestID":"70fad43bf04e342299fb9c3ecf86b29c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"836e21d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13c9d8f3-c683-415a-97d8-587155c16bc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bccf8032-7d29-4eab-8eea-f18616e5d254","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.541483} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.790552,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"836e21d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2","object_type":"device","rebac_allow":false,"scope_allow":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":"836e21d0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"836e21d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling 200 15ms","method":"POST","requestID":"836e21d0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/13c9d8f3-c683-415a-97d8-587155c16bc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83710800-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.866945,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc133426c-23ac-4340-bcbf-57efde7eb32f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31a989dc-5dd1-4fb7-baca-000c379ca386","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.557832} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a7ec55c-0e1d-41b2-b5fc-edda0843d37f': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"0d522e0e-2cb2-46cc-8dc3-9774a024e4ac","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.558828} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"83710800-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c133426c-23ac-4340-bcbf-57efde7eb32f","object_type":"device","rebac_allow":false,"scope_allow":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":"83710800-651b-11ef-b0da-d12cff5a1914","responseTime":7,"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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59ad6c90-c3de-4fa9-a62c-b82745d284a6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.5604455} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83710800-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"70fad43bf04e342299fb9c3ecf86b29c","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling 200 12ms","method":"POST","requestID":"83710800-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/c133426c-23ac-4340-bcbf-57efde7eb32f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f","requestID":"70fad43bf04e342299fb9c3ecf86b29c"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f 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":"70fad43bf04e342299fb9c3ecf86b29c"} experiment-1 | {"level":"info","message":"DELETE /experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f 204 199ms","method":"DELETE","requestID":"70fad43bf04e342299fb9c3ecf86b29c","responseTime":199,"status":204,"url":"/experiments/2a7ec55c-0e1d-41b2-b5fc-edda0843d37f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M","level":"info","message":"auth send jwt","requestID":"9d02358288fed87f15e2a4d43c035a35"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +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.357","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f7f39d6475517d2526f76bfbe4175c34"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 169ms","method":"POST","requestID":"96ed464359bb47e3fcaec70c8ed960d1","responseTime":169,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9d02358288fed87f15e2a4d43c035a35","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch","requestID":"96ed464359bb47e3fcaec70c8ed960d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 168ms","method":"POST","requestID":"2938b2920c95ea69c14c44bcd45bd8fa","responseTime":168,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch","requestID":"2938b2920c95ea69c14c44bcd45bd8fa"} device-1 | {"level":"info","message":"postDevices called","requestID":"9d02358288fed87f15e2a4d43c035a35"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +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.403","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"be04bcce07756851d49c839919c06c26"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975574,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9d02358288fed87f15e2a4d43c035a35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","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/c133426c-23ac-4340-bcbf-57efde7eb32f' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/13c9d8f3-c683-415a-97d8-587155c16bc2' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1120715c-a72a-4687-891d-af2cba100d15","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.6765537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2bd03c64-f4af-4c0c-b025-e2022e5deb5f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.68196} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"97cbf46e-46c0-4ce1-a082-e0caf61e7304","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.695932} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a15acecc-b0ca-46e1-8e27-2c3494864c80","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.6961381} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.695920377Z"}]},"request_id":"e14b9df6-12a1-43e1-a58c-4ba40801bccb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.70201} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9d02358288fed87f15e2a4d43c035a35"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.072","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d02358288fed87f15e2a4d43c035a35"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"9d02358288fed87f15e2a4d43c035a35","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M","level":"info","message":"auth send jwt","requestID":"c3257e0641caceef23de5a92528150eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c3257e0641caceef23de5a92528150eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c3257e0641caceef23de5a92528150eb"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.652564,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c3257e0641caceef23de5a92528150eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835431,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMX0.he17DJhhs9TZAdjitqi1pCM_cADJV5ra-Y4aaHMSU6M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e3b0ff6e-12a7-4f9f-adcc-5e41852fbe2c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.7281275} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66a537a6-c386-4cfd-9747-174ccb453323","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.7332814} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"d808c4fe-ef0a-4389-8fd0-672261db40c4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.7440464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2db54b77-9925-42b2-8b13-026e72163398","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.744141} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"97677bc7-b473-49bd-af55-926f1eb9bb58","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835431.749178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c3257e0641caceef23de5a92528150eb"} gateway-1 | {"time_local":"28/Aug/2024:08:57:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3257e0641caceef23de5a92528150eb"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"c3257e0641caceef23de5a92528150eb","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMn0.l5EMGy-COuxBR6cLXvWCwg3OszkeXaauTnPtKtUptck","level":"info","message":"auth send jwt","requestID":"f46f5c546e7bc3663514940c827e38cf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f46f5c546e7bc3663514940c827e38cf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f46f5c546e7bc3663514940c827e38cf"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629767,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f46f5c546e7bc3663514940c827e38cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835432,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMn0.l5EMGy-COuxBR6cLXvWCwg3OszkeXaauTnPtKtUptck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f46f5c546e7bc3663514940c827e38cf","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"86896afe-a454-47e2-90f5-5f2422ef9972","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835432.4677145} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f46f5c546e7bc3663514940c827e38cf","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"138da7b3-6837-48d2-bc2b-7d2583afe9ca","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835432.475438} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f46f5c546e7bc3663514940c827e38cf","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"1a476cb0-d3a1-428a-9a36-0d0d2b70f5ee","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835432.4999578} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f46f5c546e7bc3663514940c827e38cf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f46f5c546e7bc3663514940c827e38cf"} gateway-1 | {"time_local":"28/Aug/2024:08:57:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.065","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f46f5c546e7bc3663514940c827e38cf"} device-1 | {"level":"info","message":"PATCH /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5 200 59ms","method":"PATCH","requestID":"f46f5c546e7bc3663514940c827e38cf","responseTime":59,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMn0.l5EMGy-COuxBR6cLXvWCwg3OszkeXaauTnPtKtUptck","level":"info","message":"auth send jwt","requestID":"ea27a9abb6c256d6f76e479735b2e69e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea27a9abb6c256d6f76e479735b2e69e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea27a9abb6c256d6f76e479735b2e69e"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:12Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705081,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ea27a9abb6c256d6f76e479735b2e69e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835432,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzMn0.l5EMGy-COuxBR6cLXvWCwg3OszkeXaauTnPtKtUptck"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea27a9abb6c256d6f76e479735b2e69e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea27a9abb6c256d6f76e479735b2e69e"} gateway-1 | {"time_local":"28/Aug/2024:08:57:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ea27a9abb6c256d6f76e479735b2e69e"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/websocket 200 20ms","method":"POST","requestID":"ea27a9abb6c256d6f76e479735b2e69e","responseTime":20,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b1d60281a94e8a5cd0b6bae821a5ada","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b1d60281a94e8a5cd0b6bae821a5ada","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/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":"8b1d60281a94e8a5cd0b6bae821a5ada"} device-1 | {"level":"info","message":"OPTIONS /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/websocket 200 1ms","method":"OPTIONS","requestID":"8b1d60281a94e8a5cd0b6bae821a5ada","responseTime":1,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzM30.WZV1bbuTiOppRik4MluJa72_veNPMa_UiI6fnIUVbQg","level":"info","message":"auth send jwt","requestID":"c196ad59d4b3b66feaef835311bf6169"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c196ad59d4b3b66feaef835311bf6169","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c196ad59d4b3b66feaef835311bf6169"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:13Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998013,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c196ad59d4b3b66feaef835311bf6169","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835433,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzM30.WZV1bbuTiOppRik4MluJa72_veNPMa_UiI6fnIUVbQg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c196ad59d4b3b66feaef835311bf6169","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c196ad59d4b3b66feaef835311bf6169"} gateway-1 | {"time_local":"28/Aug/2024:08:57:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.179","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c196ad59d4b3b66feaef835311bf6169"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/websocket 200 175ms","method":"POST","requestID":"c196ad59d4b3b66feaef835311bf6169","responseTime":175,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs","level":"info","message":"auth send jwt","requestID":"9267718e648b4dd272a2128a2491d332"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9267718e648b4dd272a2128a2491d332","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9267718e648b4dd272a2128a2491d332"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918652,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9267718e648b4dd272a2128a2491d332","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9267718e648b4dd272a2128a2491d332","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.695920377Z"}]},"request_id":"d51c545c-230c-4158-b156-ba0f48fc190b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.0503263} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9267718e648b4dd272a2128a2491d332","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9267718e648b4dd272a2128a2491d332"} gateway-1 | {"time_local":"28/Aug/2024:08:57:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? 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":"9267718e648b4dd272a2128a2491d332"} device-1 | {"level":"info","message":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? 200 15ms","method":"GET","requestID":"9267718e648b4dd272a2128a2491d332","responseTime":15,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs","level":"info","message":"auth send jwt","requestID":"3a3c3694550ba65b20e12457e0c4312a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a3c3694550ba65b20e12457e0c4312a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a3c3694550ba65b20e12457e0c4312a"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.75226,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3a3c3694550ba65b20e12457e0c4312a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a3c3694550ba65b20e12457e0c4312a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"ce9d2455-9bee-44f5-b371-f8bad813d6e5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.0762613} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a3c3694550ba65b20e12457e0c4312a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a3c3694550ba65b20e12457e0c4312a"} gateway-1 | {"time_local":"28/Aug/2024:08:57:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? 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":"3a3c3694550ba65b20e12457e0c4312a"} device-1 | {"level":"info","message":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? 200 20ms","method":"GET","requestID":"3a3c3694550ba65b20e12457e0c4312a","responseTime":20,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs","level":"info","message":"auth send jwt","requestID":"34530dfb036d23f12f8e9d64481deb86"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34530dfb036d23f12f8e9d64481deb86","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"34530dfb036d23f12f8e9d64481deb86"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.690137,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"34530dfb036d23f12f8e9d64481deb86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34530dfb036d23f12f8e9d64481deb86","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to run experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to book experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully booked experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8523e820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"85240f30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926015,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8523e820-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8523e820-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865742,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"85240f30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"85240f30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.695920377Z"}]},"request_id":"537043ce-5de8-433c-95d7-24b202482aeb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.4137096} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8523e820-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"d5c91f96-ad18-4cbb-944b-01134eadc0a2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.4152527} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"85240f30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8523e820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? 200 25ms","method":"GET","requestID":"8523e820-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"85240f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? 200 25ms","method":"GET","requestID":"85240f30-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Setting up experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully locked booking for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to update booking for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully updated booking for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully set up experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"856732b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"856780d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8567a7e0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully running experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48638","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.579165,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669902,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"856732b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"856732b0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"856780d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"856780d0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.040666,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28023720-3f64-47ef-ac03-67f79be84afb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.860424} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.695920377Z"}]},"request_id":"98f34ab9-73cb-4cad-9b0c-da2870c3733e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.8606055} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8567a7e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","rebac_allow":false,"scope_allow":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":"8567a7e0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"856732b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"289055dd-e7d7-4161-944e-75d94615da1d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.8625684} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"856780d0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8567a7e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling 200 24ms","method":"POST","requestID":"8567a7e0-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"856732b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? 200 28ms","method":"GET","requestID":"856732b0-651b-11ef-b0da-d12cff5a1914","responseTime":28,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"856780d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? 200 28ms","method":"GET","requestID":"856780d0-651b-11ef-b0da-d12cff5a1914","responseTime":28,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"856beda0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d8ac638-e33f-413c-9a2e-0f33c5f8f4c5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.8802094} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"856cd800-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.881621,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"856beda0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"856beda0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"687a8f18-1f04-46a8-b9f8-2fcfda021ba2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.888264} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.876637,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"856cd800-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","rebac_allow":false,"scope_allow":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":"856cd800-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"856beda0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling 200 19ms","method":"POST","requestID":"856beda0-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"856cd800-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling 200 16ms","method":"POST","requestID":"856cd800-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"856fbe30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca95d0cc-7563-4b5b-ae50-ec3c995890b4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835434.9037282} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"856fbe30-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Building connection plan","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"20f2791e-cb7c-4c8e-a8d1-71f31c2e6bed"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"e78485a8-b4aa-43df-a890-943be8d3c7d6"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2ac5d8c7-c234-4ce4-b896-19a51c44f811"}]},"level":"info","message":"Built pairwise service configurations","requestID":"34530dfb036d23f12f8e9d64481deb86"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.252157,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"34530dfb036d23f12f8e9d64481deb86"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"856fbe30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling 200 11ms","method":"POST","requestID":"856fbe30-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"856fbe30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.694797,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"85720820-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835434,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNH0.0bUTbmNrFYyenLhRFAI9TPf0zasNc58VEkSRc2m4TPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"85720820-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"1ea28763-c3dc-4cb0-b021-e900a8de960b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.0863569} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f30cdcd-75ba-4407-8554-485c61f80416","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.0864987} authorization-1 | {"level":"info","message":"POST /relations/update 200 237ms","method":"POST","requestID":"34530dfb036d23f12f8e9d64481deb86","responseTime":237,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"4d418ee1-92d6-4790-8a0c-3bdbafee561b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.0920424} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15fea3d9-4be8-4d35-87bd-af7ef0435877","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.0922787} authorization-1 | {"level":"info","message":"POST /relations/update 200 168ms","method":"POST","requestID":"85720820-651b-11ef-b0da-d12cff5a1914","responseTime":168,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"34530dfb036d23f12f8e9d64481deb86"} gateway-1 | {"time_local":"28/Aug/2024:08:57:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"1.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34530dfb036d23f12f8e9d64481deb86"} experiment-1 | {"level":"info","message":"POST /experiments? 201 1006ms","method":"POST","requestID":"34530dfb036d23f12f8e9d64481deb86","responseTime":1006,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNX0.OtXDEI8hP_-WLc_MRsmi72co1AJC51ITwLM4cYvHJUM","level":"info","message":"auth send jwt","requestID":"88e1a9dc62918b052cf6982ada327746"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"88e1a9dc62918b052cf6982ada327746","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88e1a9dc62918b052cf6982ada327746"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725039,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88e1a9dc62918b052cf6982ada327746","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835435,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNX0.OtXDEI8hP_-WLc_MRsmi72co1AJC51ITwLM4cYvHJUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88e1a9dc62918b052cf6982ada327746","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.695920377Z"}]},"request_id":"febecf60-5727-4050-94c3-1b4c5cf795fb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.115078} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88e1a9dc62918b052cf6982ada327746","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1'","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1'","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 364ms","method":"POST","requestID":"85720820-651b-11ef-b0da-d12cff5a1914","responseTime":364,"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":"88e1a9dc62918b052cf6982ada327746"} gateway-1 | {"time_local":"28/Aug/2024:08:57:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88e1a9dc62918b052cf6982ada327746"} device-1 | {"level":"info","message":"GET /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef? 200 173ms","method":"GET","requestID":"88e1a9dc62918b052cf6982ada327746","responseTime":173,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"85720820-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNX0.OtXDEI8hP_-WLc_MRsmi72co1AJC51ITwLM4cYvHJUM","level":"info","message":"auth send jwt","requestID":"e503df8730cfe2078fcec69ebb266f4b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e503df8730cfe2078fcec69ebb266f4b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e503df8730cfe2078fcec69ebb266f4b"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","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} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.022674,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e503df8730cfe2078fcec69ebb266f4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835435,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzNX0.OtXDEI8hP_-WLc_MRsmi72co1AJC51ITwLM4cYvHJUM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e503df8730cfe2078fcec69ebb266f4b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:11.744023560Z"}]},"request_id":"29ad73af-5e08-40d5-b064-8543b36e5ca2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.3052607} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e503df8730cfe2078fcec69ebb266f4b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e503df8730cfe2078fcec69ebb266f4b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e503df8730cfe2078fcec69ebb266f4b"} device-1 | {"level":"info","message":"GET /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5? 200 23ms","method":"GET","requestID":"e503df8730cfe2078fcec69ebb266f4b","responseTime":23,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5?"} device-1 | {"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1799109301588935897 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:4moL\r\na=ice-pwd:wqB7x72uobdClam6YCGj66PF\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9C:ED:67:62:81:46:EA:52:88:51:3D:C2:F2:5D:E9:1B:B3:72:A7:B7:BC:FA:00:B2:72:22:1F:E9:27:7F:0F:3F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"34530dfb036d23f12f8e9d64481deb86"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"85c77b20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d777f0f-3312-4225-80c6-1fac4bade4bf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.481593} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.365359,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"85c77b20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","rebac_allow":false,"scope_allow":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":"85c77b20-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"85c77b20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling 200 15ms","method":"POST","requestID":"85c77b20-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"85ca6150-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fbf18dff-61db-4305-b8c2-ca06d8cffeb6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835435.5027487} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.66735,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"85ca6150-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"85ca6150-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"85ca6150-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling 200 25ms","method":"POST","requestID":"85ca6150-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling"} device-1 | {"device":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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/f45233ab-efeb-451c-8540-4bc62f1f71e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e925103707f28eaa0b18984c8ac01b32","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e925103707f28eaa0b18984c8ac01b32","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/af772a2f-e6de-4398-b0f7-5466d0bce2d5"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"}}},"level":"info","message":"received a callback","requestID":"e925103707f28eaa0b18984c8ac01b32"} device-1 | {"content":{"candidate":"candidate:2581317980 1 udp 2113937151 80b63588-0dab-4505-bb9c-35a988e3e5e9.local 45763 typ host generation 0 ufrag 4moL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"e925103707f28eaa0b18984c8ac01b32"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"e925103707f28eaa0b18984c8ac01b32","responseTime":12,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:183527503 1 udp 1677729535 141.24.211.56 45763 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 4moL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3034371005 1 udp 33562623 141.24.210.113 53904 typ relay raddr 141.24.211.56 rport 45763 generation 0 ufrag 4moL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef'"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","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/f45233ab-efeb-451c-8540-4bc62f1f71e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16bec9c409f1332c4afa7bf3868e0d62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16bec9c409f1332c4afa7bf3868e0d62","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/af772a2f-e6de-4398-b0f7-5466d0bce2d5"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"}}},"level":"info","message":"received a callback","requestID":"16bec9c409f1332c4afa7bf3868e0d62"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"86ee47e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff45233ab-efeb-451c-8540-4bc62f1f71e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f7b4be5-e5e5-454e-8648-490f9ff33df3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.4108214} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.098913,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"86ee47e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","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":"86ee47e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"86ee47e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1 200 9ms","method":"GET","requestID":"86ee47e0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"16bec9c409f1332c4afa7bf3868e0d62","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"16bec9c409f1332c4afa7bf3868e0d62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86f21870-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70bf7ac4-db2a-4a1a-b8bc-8639787c503a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.4350393} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.090597,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"86f21870-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"86f21870-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86f21870-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling 200 8ms","method":"POST","requestID":"86f21870-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86f39f10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cb11f96-afff-4184-86f8-59adcc8fda58","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.445905} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.38644,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"86f39f10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","rebac_allow":false,"scope_allow":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":"86f39f10-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86f39f10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling 200 10ms","method":"POST","requestID":"86f39f10-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg","level":"info","message":"auth send jwt","requestID":"07140deb0766cdb8ab9e400ae8b6ae45"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07140deb0766cdb8ab9e400ae8b6ae45","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","requestID":"07140deb0766cdb8ab9e400ae8b6ae45"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.749174,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"07140deb0766cdb8ab9e400ae8b6ae45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835437,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"07140deb0766cdb8ab9e400ae8b6ae45","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","requestID":"07140deb0766cdb8ab9e400ae8b6ae45"} gateway-1 | {"time_local":"28/Aug/2024:08:57:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07140deb0766cdb8ab9e400ae8b6ae45"} experiment-1 | {"level":"info","message":"GET /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57 200 13ms","method":"GET","requestID":"07140deb0766cdb8ab9e400ae8b6ae45","responseTime":13,"status":200,"url":"/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg","level":"info","message":"auth send jwt","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"815e244f5ae3fbd095c1dc3ad869117c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702777,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"815e244f5ae3fbd095c1dc3ad869117c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835437,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"815e244f5ae3fbd095c1dc3ad869117c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Attempting to finish experiment","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.658838,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835437,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1","device":"94e8c9b2-c59e-4a2a-acc0-c88626c34cef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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":"af772a2f-e6de-4398-b0f7-5466d0bce2d5","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/f45233ab-efeb-451c-8540-4bc62f1f71e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d348de02264338413cf20b2e46466561","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff45233ab-efeb-451c-8540-4bc62f1f71e1': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff45233ab-efeb-451c-8540-4bc62f1f71e1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"02b7d937-d0e5-4102-a939-1d049fe9b279","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.5216622} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d348de02264338413cf20b2e46466561","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"720a5916-65b9-42a6-b15c-b707eb07749c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.522229} 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/af772a2f-e6de-4398-b0f7-5466d0bce2d5"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"}}},"level":"info","message":"received a callback","requestID":"d348de02264338413cf20b2e46466561"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58246e4bbb148f67755db480081c0a28","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"58246e4bbb148f67755db480081c0a28","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"}}},"level":"info","message":"received a callback","requestID":"58246e4bbb148f67755db480081c0a28"} device-1 | {"data":{"peerconnection":"f45233ab-efeb-451c-8540-4bc62f1f71e1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1 204 36ms","method":"DELETE","requestID":"86fcede0-651b-11ef-b0da-d12cff5a1914","responseTime":36,"status":204,"url":"/peerconnections/f45233ab-efeb-451c-8540-4bc62f1f71e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"},"level":"info","message":"Successfully finished experiment","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"87050430-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf772a2f-e6de-4398-b0f7-5466d0bce2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"613e99df-aafc-4300-973d-ed0d9ab6642c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.5603178} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.455979,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"87050430-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87050430-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"87050430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling 200 10ms","method":"POST","requestID":"87050430-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8706d8f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94e8c9b2-c59e-4a2a-acc0-c88626c34cef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21efaea7-6574-4f34-9537-622d14cbdefa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.5719712} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.276301,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8706d8f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef","object_type":"device","rebac_allow":false,"scope_allow":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":"8706d8f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"8f88066e-52d0-4a03-9032-ca600d05e46b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.5736818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a8d3a7f-67ec-4118-91e2-34c759ada7a4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.5740721} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"815e244f5ae3fbd095c1dc3ad869117c","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8706d8f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling 200 11ms","method":"POST","requestID":"8706d8f0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/94e8c9b2-c59e-4a2a-acc0-c88626c34cef/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} gateway-1 | {"time_local":"28/Aug/2024:08:57:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"815e244f5ae3fbd095c1dc3ad869117c"} experiment-1 | {"level":"info","message":"DELETE /experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57 204 140ms","method":"DELETE","requestID":"815e244f5ae3fbd095c1dc3ad869117c","responseTime":140,"status":204,"url":"/experiments/8e5aeeb7-bdd0-42e9-80aa-b64f788ecb57"} gateway-1 | {"time_local":"28/Aug/2024:08:57:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"5.095","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8b36d426fc35c7faa3ef97c87a4211f0"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"d348de02264338413cf20b2e46466561"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"d348de02264338413cf20b2e46466561","responseTime":110,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"58246e4bbb148f67755db480081c0a28","responseTime":110,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg","level":"info","message":"auth send jwt","requestID":"3d65437ce90761212fe510f9fdfada5a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d65437ce90761212fe510f9fdfada5a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d65437ce90761212fe510f9fdfada5a"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.954403,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3d65437ce90761212fe510f9fdfada5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835437,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"58246e4bbb148f67755db480081c0a28"} gateway-1 | {"time_local":"28/Aug/2024:08:57:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"3.749","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"409d708cac88e8a08cd4b05aa4460edb"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/af772a2f-e6de-4398-b0f7-5466d0bce2d5' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ef8bd1ef-ad24-41cb-ae1f-a29bc3c7c846","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.6645544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","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/94e8c9b2-c59e-4a2a-acc0-c88626c34cef' 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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"393a0bd7-a1dc-4db5-bef1-6d96ade88d88","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.671174} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b6905d17-9ac5-499d-9bf3-cded9e9b3255","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.6875496} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af1cdea0-a2a8-4686-9264-f92aeb14a187","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.687816} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"30ad312a-8855-4561-a0f1-3f7fca0426dd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.6942127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d65437ce90761212fe510f9fdfada5a"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d65437ce90761212fe510f9fdfada5a"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"3d65437ce90761212fe510f9fdfada5a","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg","level":"info","message":"auth send jwt","requestID":"03d8b949f39bc931d8261d8eff6a4500"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03d8b949f39bc931d8261d8eff6a4500","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"03d8b949f39bc931d8261d8eff6a4500"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.737487,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"03d8b949f39bc931d8261d8eff6a4500","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835437,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzN30.iNl3I-k0XkhoTEjdaSpadkpHS4RB2Ml2ntsLbQtjBzg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"60394032-010d-49e5-a37c-6ed1e511fad0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.7244604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98dbb856-c323-4323-be66-2b24ed157d9a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.7303932} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"d9b52c08-33d6-4ff8-bef8-e557976da3eb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.7426927} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9514a631-882d-4407-93a5-7bb1225fc8fa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.7427955} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.742680495Z"}]},"request_id":"16020885-4f6c-4f70-b162-4dfb94eb1617","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835437.7477734} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"03d8b949f39bc931d8261d8eff6a4500"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03d8b949f39bc931d8261d8eff6a4500"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"03d8b949f39bc931d8261d8eff6a4500","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOH0.-fESUpPFhW0TYWr-B5JotHxkOSQVmi_oH3hZ7zDd_qg","level":"info","message":"auth send jwt","requestID":"623883fe91389dfb3d736bd34256f3fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"623883fe91389dfb3d736bd34256f3fd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"623883fe91389dfb3d736bd34256f3fd"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:18Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661513,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"623883fe91389dfb3d736bd34256f3fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835438,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOH0.-fESUpPFhW0TYWr-B5JotHxkOSQVmi_oH3hZ7zDd_qg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"623883fe91389dfb3d736bd34256f3fd","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"827bd00c-1199-45ae-9e3a-b571712d7849","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835438.343122} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"623883fe91389dfb3d736bd34256f3fd","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aaf64437-b60b-425b-b759-cdab9ead8703","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835438.3482296} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"623883fe91389dfb3d736bd34256f3fd","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"309bc914-507f-4584-8fb8-4ab77329d7e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835438.36141} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"623883fe91389dfb3d736bd34256f3fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"623883fe91389dfb3d736bd34256f3fd"} gateway-1 | {"time_local":"28/Aug/2024:08:57:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"623883fe91389dfb3d736bd34256f3fd"} device-1 | {"level":"info","message":"PATCH /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249 200 30ms","method":"PATCH","requestID":"623883fe91389dfb3d736bd34256f3fd","responseTime":30,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOH0.-fESUpPFhW0TYWr-B5JotHxkOSQVmi_oH3hZ7zDd_qg","level":"info","message":"auth send jwt","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:18Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759625,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"901f0b847c7d6da8a19fb7cc57d5abfa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835438,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOH0.-fESUpPFhW0TYWr-B5JotHxkOSQVmi_oH3hZ7zDd_qg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa"} gateway-1 | {"time_local":"28/Aug/2024:08:57:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/websocket 200 18ms","method":"POST","requestID":"901f0b847c7d6da8a19fb7cc57d5abfa","responseTime":18,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18d637fca183858628f1d6647279116d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"18d637fca183858628f1d6647279116d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/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":"18d637fca183858628f1d6647279116d"} device-1 | {"level":"info","message":"OPTIONS /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/websocket 200 1ms","method":"OPTIONS","requestID":"18d637fca183858628f1d6647279116d","responseTime":1,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w","level":"info","message":"auth send jwt","requestID":"1a129492259294133d2444713704cb35"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a129492259294133d2444713704cb35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1a129492259294133d2444713704cb35"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689676,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1a129492259294133d2444713704cb35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a129492259294133d2444713704cb35","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1a129492259294133d2444713704cb35"} gateway-1 | {"time_local":"28/Aug/2024:08:57:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1a129492259294133d2444713704cb35"} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/websocket 200 18ms","method":"POST","requestID":"1a129492259294133d2444713704cb35","responseTime":18,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w","level":"info","message":"auth send jwt","requestID":"66f95417a293bdf0841aa97dbbe314c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"66f95417a293bdf0841aa97dbbe314c9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"66f95417a293bdf0841aa97dbbe314c9"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.463703,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"66f95417a293bdf0841aa97dbbe314c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"66f95417a293bdf0841aa97dbbe314c9","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"1394e6c1-2663-4dae-bcf4-73b9877db008","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.7031446} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"66f95417a293bdf0841aa97dbbe314c9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"66f95417a293bdf0841aa97dbbe314c9"} gateway-1 | {"time_local":"28/Aug/2024:08:57:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? 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":"66f95417a293bdf0841aa97dbbe314c9"} device-1 | {"level":"info","message":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? 200 12ms","method":"GET","requestID":"66f95417a293bdf0841aa97dbbe314c9","responseTime":12,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w","level":"info","message":"auth send jwt","requestID":"57444f31fa4cc8928c832cb0e10c5aa7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"57444f31fa4cc8928c832cb0e10c5aa7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57444f31fa4cc8928c832cb0e10c5aa7"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882128,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"57444f31fa4cc8928c832cb0e10c5aa7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57444f31fa4cc8928c832cb0e10c5aa7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.742680495Z"}]},"request_id":"200e5a9b-edd5-405b-8f9f-44463ea81b2a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.7235894} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57444f31fa4cc8928c832cb0e10c5aa7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57444f31fa4cc8928c832cb0e10c5aa7"} gateway-1 | {"time_local":"28/Aug/2024:08:57:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 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":"57444f31fa4cc8928c832cb0e10c5aa7"} device-1 | {"level":"info","message":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 200 19ms","method":"GET","requestID":"57444f31fa4cc8928c832cb0e10c5aa7","responseTime":19,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w","level":"info","message":"auth send jwt","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cd78849c3337a611b34ea4223e2f0e7c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.062074,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cd78849c3337a611b34ea4223e2f0e7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd78849c3337a611b34ea4223e2f0e7c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to run experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to book experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully booked experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88581110-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96228,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700904,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88581110-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"88581110-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"dea694a4-abb7-4b45-be64-d2aa9fcb2414","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.7843661} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.742680495Z"}]},"request_id":"38c35ddd-056b-430c-b8a8-4c1da3b4c160","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.7853272} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"88581110-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? 200 13ms","method":"GET","requestID":"8857ea00-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88581110-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 200 13ms","method":"GET","requestID":"88581110-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Setting up experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully set up experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8861fc20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.520598,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully running experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.964288,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.47097,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c69e7fa-f60c-4842-b3aa-529e2cb0af1c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.850498} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8861fc20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","rebac_allow":false,"scope_allow":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":"8861fc20-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8861fc20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling 200 15ms","method":"POST","requestID":"8861fc20-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.742680495Z"}]},"request_id":"18ad85a1-7514-404a-86c0-e48ff340f4bf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.8567884} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"4cbb71e1-05b5-47fd-8c86-0552d58c85e8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.858394} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88653070-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 200 27ms","method":"GET","requestID":"8861ae00-651b-11ef-b0da-d12cff5a1914","responseTime":27,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e572f8ca-7d0f-4aad-98f1-e259a530c2b5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.8681283} device-1 | {"level":"info","message":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? 200 30ms","method":"GET","requestID":"88615fe0-651b-11ef-b0da-d12cff5a1914","responseTime":30,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249?"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.044031,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88653070-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","rebac_allow":false,"scope_allow":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":"88653070-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88669000-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88653070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling 200 11ms","method":"POST","requestID":"88653070-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12ea3088-e3f0-4614-97fb-2209a1ace249","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.8772647} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.072094,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88669000-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","rebac_allow":false,"scope_allow":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":"88669000-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88669000-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling 200 9ms","method":"POST","requestID":"88669000-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"886864c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8c5e375-7dca-4fa3-868c-6fab109f19d5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835439.8887417} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234281,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"886864c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"886864c0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"886864c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling 200 9ms","method":"POST","requestID":"886864c0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Building connection plan","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d8ad6f50-2d3c-4502-90b0-29927eee6d06"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"02c12f9a-6b17-4ef0-9954-3cecffae50dd"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b792f08f-7391-4194-aa4d-6ee1aca3bffd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.812909,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"886a6090-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835439,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQzOX0.IqCmH6aJ1rNoqyaPvvt7tw5-V2lgkyc0PLLstSALz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F65fe552c-3935-48bc-829d-e9431b55ec3b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F65fe552c-3935-48bc-829d-e9431b55ec3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b0376f17-eb3e-40f4-8308-2bfcb871d94b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.027171} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c0cc626-b8cb-4792-9272-23930a29f1df","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.0274055} authorization-1 | {"level":"info","message":"POST /relations/update 200 181ms","method":"POST","requestID":"cd78849c3337a611b34ea4223e2f0e7c","responseTime":181,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"4d347cfb-9062-4524-99f0-7cd9b4799669","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.029057} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9cce3dd1-1840-4104-bfd0-99246dff597c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.0294955} authorization-1 | {"level":"info","message":"POST /relations/update 200 125ms","method":"POST","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914","responseTime":125,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 301ms","method":"POST","requestID":"cd78849c3337a611b34ea4223e2f0e7c","responseTime":301,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.305","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0MH0.m4ggVyaARyripVVHzJylbWkNZFBx8e0YmjvQnTnFvo4","level":"info","message":"auth send jwt","requestID":"714bd8887a1ce0882f0944c6d17f821f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"714bd8887a1ce0882f0944c6d17f821f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"714bd8887a1ce0882f0944c6d17f821f"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813863,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"714bd8887a1ce0882f0944c6d17f821f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835440,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0MH0.m4ggVyaARyripVVHzJylbWkNZFBx8e0YmjvQnTnFvo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"714bd8887a1ce0882f0944c6d17f821f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.687533991Z"}]},"request_id":"58b62f32-3866-4366-94cd-729058e90c3e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.0550516} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"714bd8887a1ce0882f0944c6d17f821f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c'","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c'","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 289ms","method":"POST","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914","responseTime":289,"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":"714bd8887a1ce0882f0944c6d17f821f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"714bd8887a1ce0882f0944c6d17f821f"} device-1 | {"level":"info","message":"GET /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249? 200 142ms","method":"GET","requestID":"714bd8887a1ce0882f0944c6d17f821f","responseTime":142,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"886a6090-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0MH0.m4ggVyaARyripVVHzJylbWkNZFBx8e0YmjvQnTnFvo4","level":"info","message":"auth send jwt","requestID":"f5bef300300d0df45a0d14dc58a88e85"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"f5bef300300d0df45a0d14dc58a88e85","responseTime":8,"status":200,"url":"/auth"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","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} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5bef300300d0df45a0d14dc58a88e85"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.006024,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f5bef300300d0df45a0d14dc58a88e85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835440,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0MH0.m4ggVyaARyripVVHzJylbWkNZFBx8e0YmjvQnTnFvo4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f5bef300300d0df45a0d14dc58a88e85","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:17.742680495Z"}]},"request_id":"ff1da50d-3f43-4559-aaa0-0c21d00f8f3a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.2135663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f5bef300300d0df45a0d14dc58a88e85","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5bef300300d0df45a0d14dc58a88e85"} gateway-1 | {"time_local":"28/Aug/2024:08:57:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 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":"f5bef300300d0df45a0d14dc58a88e85"} device-1 | {"level":"info","message":"GET /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7? 200 18ms","method":"GET","requestID":"f5bef300300d0df45a0d14dc58a88e85","responseTime":18,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7?"} device-1 | {"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1570640435072304437 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:vsgL\r\na=ice-pwd:5eJ3UIjtpR5i/SIa+tzLoZv7\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9F:3F:27:70:F0:70:42:60:C6:06:02:99:6B:9D:17:59:DB:4E:BF:E1:88:92:84:7D:07:3F:7F:77:E0:CC:41:03\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cd78849c3337a611b34ea4223e2f0e7c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88b217f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e4ab53b-bd8f-4858-bcb8-e235f81eda00","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.373018} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317441,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88b217f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","rebac_allow":false,"scope_allow":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":"88b217f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88b217f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling 200 11ms","method":"POST","requestID":"88b217f0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88b413c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5eaea23d-7f16-464b-a067-302fc2d30167","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835440.3844585} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.236249,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"88b413c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88b413c0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88b413c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling 200 10ms","method":"POST","requestID":"88b413c0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling"} device-1 | {"device":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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/2283d2e9-4301-4dc3-8aeb-5127d55f099c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"15580b2a007f80df79d9f3447525f6fe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"15580b2a007f80df79d9f3447525f6fe","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/15a5454a-d6ed-46e3-8af3-5da0cefbf249"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"}}},"level":"info","message":"received a callback","requestID":"15580b2a007f80df79d9f3447525f6fe"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"15580b2a007f80df79d9f3447525f6fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"15580b2a007f80df79d9f3447525f6fe","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:2757905893 1 udp 2113937151 09ffbf08-6195-4a0f-a74f-0870f3b55fe1.local 39311 typ host generation 0 ufrag vsgL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:542058394 1 udp 1677729535 141.24.211.56 39311 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag vsgL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1933744145 1 udp 33562623 141.24.210.113 52435 typ relay raddr 141.24.211.56 rport 39311 generation 0 ufrag vsgL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7'"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU","level":"info","message":"auth send jwt","requestID":"589ebbb2379797d9fabc1e121399351f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"589ebbb2379797d9fabc1e121399351f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"589ebbb2379797d9fabc1e121399351f"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.724037,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"589ebbb2379797d9fabc1e121399351f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"589ebbb2379797d9fabc1e121399351f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"589ebbb2379797d9fabc1e121399351f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86d0defbb6973adabfec8d7c0fc15e96","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"86d0defbb6973adabfec8d7c0fc15e96","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"GET /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b 200 13ms","method":"GET","requestID":"589ebbb2379797d9fabc1e121399351f","responseTime":13,"status":200,"url":"/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"} 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/15a5454a-d6ed-46e3-8af3-5da0cefbf249"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"}}},"level":"info","message":"received a callback","requestID":"86d0defbb6973adabfec8d7c0fc15e96"} gateway-1 | {"time_local":"28/Aug/2024:08:57:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"589ebbb2379797d9fabc1e121399351f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"89e540c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2283d2e9-4301-4dc3-8aeb-5127d55f099c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9a2a2ff-7127-4762-8370-f37f1ac0c551","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.3849802} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.105335,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"89e540c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","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":"89e540c0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"89e540c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c 200 22ms","method":"GET","requestID":"89e540c0-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 64ms","method":"POST","requestID":"86d0defbb6973adabfec8d7c0fc15e96","responseTime":64,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.067","http_referrer":"","http_user_agent":"node-fetch","requestID":"86d0defbb6973adabfec8d7c0fc15e96"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"89ee4170-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"738111d2-345a-4b1c-a8a7-7b0ab65ccd75","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.444024} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.231128,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"89ee4170-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","rebac_allow":false,"scope_allow":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":"89ee4170-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"89ee4170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling 200 10ms","method":"POST","requestID":"89ee4170-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"89f01630-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98bf9883-656d-4691-b18c-29b5a5da8c49","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.4572487} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.487777,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"89f01630-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","rebac_allow":false,"scope_allow":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":"89f01630-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"89f01630-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling 200 11ms","method":"POST","requestID":"89f01630-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU","level":"info","message":"auth send jwt","requestID":"a1712741521ef787a4ea589c1bd073e2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a1712741521ef787a4ea589c1bd073e2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"a1712741521ef787a4ea589c1bd073e2"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.023578,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a1712741521ef787a4ea589c1bd073e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a1712741521ef787a4ea589c1bd073e2","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"a1712741521ef787a4ea589c1bd073e2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1712741521ef787a4ea589c1bd073e2"} experiment-1 | {"level":"info","message":"GET /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b 200 12ms","method":"GET","requestID":"a1712741521ef787a4ea589c1bd073e2","responseTime":12,"status":200,"url":"/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU","level":"info","message":"auth send jwt","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e9597803177d0fc4d5b39d7fe50abc36","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.793453,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e9597803177d0fc4d5b39d7fe50abc36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e9597803177d0fc4d5b39d7fe50abc36","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Attempting to finish experiment","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.758054,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c","device":"1a45bc8e-4696-45e3-b735-62ed3ac928a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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":"15a5454a-d6ed-46e3-8af3-5da0cefbf249","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/2283d2e9-4301-4dc3-8aeb-5127d55f099c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2283d2e9-4301-4dc3-8aeb-5127d55f099c': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2283d2e9-4301-4dc3-8aeb-5127d55f099c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"a8f27b08-f589-482b-925d-bbb6e6cf2cc7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.5247872} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a99eaf1f-2b25-478d-8cae-7c037fa54bfc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.5250783} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7eb024719775495f09e2caf6a5e1d8f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7eb024719775495f09e2caf6a5e1d8f4","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/15a5454a-d6ed-46e3-8af3-5da0cefbf249"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"}}},"level":"info","message":"received a callback","requestID":"7eb024719775495f09e2caf6a5e1d8f4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afdccf62025fe778bfd04a660cb075bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"}}},"level":"info","message":"received a callback","requestID":"afdccf62025fe778bfd04a660cb075bc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"afdccf62025fe778bfd04a660cb075bc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"peerconnection":"2283d2e9-4301-4dc3-8aeb-5127d55f099c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c 204 85ms","method":"DELETE","requestID":"89f87aa0-651b-11ef-b0da-d12cff5a1914","responseTime":85,"status":204,"url":"/peerconnections/2283d2e9-4301-4dc3-8aeb-5127d55f099c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"},"level":"info","message":"Successfully finished experiment","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a09dfc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15a5454a-d6ed-46e3-8af3-5da0cefbf249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85b6721d-ffba-4436-8d98-bd6b549b2d13","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.6255271} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.789181,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8a09dfc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249","object_type":"device","rebac_allow":false,"scope_allow":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":"8a09dfc0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a09dfc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling 200 11ms","method":"POST","requestID":"8a09dfc0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/15a5454a-d6ed-46e3-8af3-5da0cefbf249/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a0c02a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a45bc8e-4696-45e3-b735-62ed3ac928a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4312a5cd-9243-4a65-9192-6465fe3bf304","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.640053} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.328861,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8a0c02a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7","object_type":"device","rebac_allow":false,"scope_allow":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":"8a0c02a0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F65fe552c-3935-48bc-829d-e9431b55ec3b': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F65fe552c-3935-48bc-829d-e9431b55ec3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"946c2de9-adde-46e1-a9c2-4dc17169e1de","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.644882} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a0c02a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"701e9223-c359-400c-bfd4-986e56d0656a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.6451905} device-1 | {"level":"info","message":"POST /devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling 200 12ms","method":"POST","requestID":"8a0c02a0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"e9597803177d0fc4d5b39d7fe50abc36","responseTime":28,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} gateway-1 | {"time_local":"28/Aug/2024:08:57:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.286","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9597803177d0fc4d5b39d7fe50abc36"} experiment-1 | {"level":"info","message":"DELETE /experiments/65fe552c-3935-48bc-829d-e9431b55ec3b 204 282ms","method":"DELETE","requestID":"e9597803177d0fc4d5b39d7fe50abc36","responseTime":282,"status":204,"url":"/experiments/65fe552c-3935-48bc-829d-e9431b55ec3b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"4.390","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3eccd01973babb722684d86e0c84c9d7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 255ms","method":"POST","requestID":"7eb024719775495f09e2caf6a5e1d8f4","responseTime":255,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.258","http_referrer":"","http_user_agent":"node-fetch","requestID":"7eb024719775495f09e2caf6a5e1d8f4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 254ms","method":"POST","requestID":"afdccf62025fe778bfd04a660cb075bc","responseTime":254,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.259","http_referrer":"","http_user_agent":"node-fetch","requestID":"afdccf62025fe778bfd04a660cb075bc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU","level":"info","message":"auth send jwt","requestID":"3dfff6767d08b2ef531cb04ca0598ae9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3dfff6767d08b2ef531cb04ca0598ae9"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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":"3.111","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"48c0efc65fbe047d8906a08fdb2679c6"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.883554,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3dfff6767d08b2ef531cb04ca0598ae9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","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/15a5454a-d6ed-46e3-8af3-5da0cefbf249' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"05ad5950-5792-4c40-9690-c01df4f593a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.82894} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be9f44c6-2cfe-4a1f-ab62-685bd7d6f809","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.836249} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1a45bc8e-4696-45e3-b735-62ed3ac928a7' closed"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"95086a09-0a04-4d38-81e9-cc950e043c5d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.860851} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d113b10-a940-4a4f-b39e-e470a1de7e32","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.8610156} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"9268d6a1-9e2c-4335-95cc-746bb84b2bb5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.8670235} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3dfff6767d08b2ef531cb04ca0598ae9"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.090","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dfff6767d08b2ef531cb04ca0598ae9"} device-1 | {"level":"info","message":"POST /devices? 201 84ms","method":"POST","requestID":"3dfff6767d08b2ef531cb04ca0598ae9","responseTime":84,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU","level":"info","message":"auth send jwt","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.805657,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835442,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Mn0.bxead1M4jBR52pdI0CXhcv1OcDP4CQ-xpqNv509rTTU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e2d7b887-0e09-4729-80a6-88047b145dbc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.906948} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cfc56d2-64de-43df-afba-d3c929d296d5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.9123058} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"4f1d2bdf-a71d-4d21-bc63-846b59de7ef9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.9340098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2278a7e8-c5c9-47eb-8ef8-236c32dc736c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.9341595} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"cdd04486-4b28-4cf3-b42f-5829dc50bc99","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835442.9401746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8"} device-1 | {"level":"info","message":"POST /devices? 201 66ms","method":"POST","requestID":"15a82bdadcd3a55a2f816e0fbe7a98f8","responseTime":66,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"629ee951e2f2ca079303bcbf9673aeb3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"629ee951e2f2ca079303bcbf9673aeb3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"629ee951e2f2ca079303bcbf9673aeb3"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735346,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"629ee951e2f2ca079303bcbf9673aeb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"629ee951e2f2ca079303bcbf9673aeb3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"39b9aca2-5156-4c24-9300-cb31d97331e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.50997} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"629ee951e2f2ca079303bcbf9673aeb3","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"e317736b7c0a88a7ce66e3e0afe790f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e317736b7c0a88a7ce66e3e0afe790f6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13730001-c39c-4d8f-9a09-9bccac5fbcdd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.5165408} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.962584,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"629ee951e2f2ca079303bcbf9673aeb3","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e317736b7c0a88a7ce66e3e0afe790f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"2c04f8dd-db82-4145-8218-753a0c0071a3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.5398583} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"629ee951e2f2ca079303bcbf9673aeb3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"a77da1e5-a207-417e-8ee6-279c1c7ddecb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.5413587} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"629ee951e2f2ca079303bcbf9673aeb3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/61f1dd12-4304-462f-a574-a551ef5605c8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"629ee951e2f2ca079303bcbf9673aeb3"} device-1 | {"level":"info","message":"PATCH /devices/61f1dd12-4304-462f-a574-a551ef5605c8 200 44ms","method":"PATCH","requestID":"629ee951e2f2ca079303bcbf9673aeb3","responseTime":44,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6","responseTime":3,"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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2f988ad-f57b-463a-b409-9d6113078bcc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.5486615} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805985,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6fb8ec344bab10b8ac7791ae3174f8b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"13ed5d0c-e0cf-401c-900e-a283dbb37d82","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.5589695} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e317736b7c0a88a7ce66e3e0afe790f6"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.053","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e317736b7c0a88a7ce66e3e0afe790f6"} device-1 | {"level":"info","message":"PATCH /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb 200 47ms","method":"PATCH","requestID":"e317736b7c0a88a7ce66e3e0afe790f6","responseTime":48,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/websocket 200 17ms","method":"POST","requestID":"6fb8ec344bab10b8ac7791ae3174f8b6","responseTime":17,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"734ae0a6550fc9e4f25ca1917d1884e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"734ae0a6550fc9e4f25ca1917d1884e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"734ae0a6550fc9e4f25ca1917d1884e0"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.774488,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"734ae0a6550fc9e4f25ca1917d1884e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"734ae0a6550fc9e4f25ca1917d1884e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"734ae0a6550fc9e4f25ca1917d1884e0"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"734ae0a6550fc9e4f25ca1917d1884e0"} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/websocket 200 29ms","method":"POST","requestID":"734ae0a6550fc9e4f25ca1917d1884e0","responseTime":29,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"174d1d9a3429c90348d841291fa13342"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"174d1d9a3429c90348d841291fa13342","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"174d1d9a3429c90348d841291fa13342"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650476,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"174d1d9a3429c90348d841291fa13342","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"174d1d9a3429c90348d841291fa13342","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"965077b6-1f71-4395-bc53-f319c75c71d7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.6232524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"174d1d9a3429c90348d841291fa13342","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"174d1d9a3429c90348d841291fa13342"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 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":"174d1d9a3429c90348d841291fa13342"} device-1 | {"level":"info","message":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 200 12ms","method":"GET","requestID":"174d1d9a3429c90348d841291fa13342","responseTime":12,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"d58ee15d1df821f0269d83e32834ffb8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d58ee15d1df821f0269d83e32834ffb8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d58ee15d1df821f0269d83e32834ffb8"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.65233,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d58ee15d1df821f0269d83e32834ffb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d58ee15d1df821f0269d83e32834ffb8","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"79a288dc-e38e-4849-9224-c77aaae95404","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.6392872} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d58ee15d1df821f0269d83e32834ffb8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d58ee15d1df821f0269d83e32834ffb8"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 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":"d58ee15d1df821f0269d83e32834ffb8"} device-1 | {"level":"info","message":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 200 11ms","method":"GET","requestID":"d58ee15d1df821f0269d83e32834ffb8","responseTime":11,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"65d46f1d662ead8ba977c7efb98dc276"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"65d46f1d662ead8ba977c7efb98dc276","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"65d46f1d662ead8ba977c7efb98dc276"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.671947,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"65d46f1d662ead8ba977c7efb98dc276","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"65d46f1d662ead8ba977c7efb98dc276","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to run experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to book experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully booked experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678569,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923561,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"3d2be461-a1f8-4a73-af2d-410050619754","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.699258} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"084ec686-c4df-4609-8465-cd76da03c124","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.7001772} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 200 15ms","method":"GET","requestID":"8aad24a0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 200 14ms","method":"GET","requestID":"8aad4bb0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Setting up experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully set up experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8ab6c190-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully running experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993122,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.726871,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"1816891e-ea1d-43f0-a311-2baf4547307c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.7659004} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.881755,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"c4ce0e70-1b9a-4077-ab8b-5518bfafb4f3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.7675233} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a485f5d0-173c-4e1a-9eef-ca9e63f9411d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.767711} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8ab6c190-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"8ab6c190-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6227e837-1566-4317-8a98-cb111a0cffb2#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6227e837-1566-4317-8a98-cb111a0cffb2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2f335ed5-d037-4c14-8604-da92e216f77f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.773628} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"032c6114-8be8-40b1-8e60-c01d680eb745","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.7739706} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 200 24ms","method":"GET","requestID":"8ab67370-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"65d46f1d662ead8ba977c7efb98dc276","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 200 26ms","method":"GET","requestID":"8ab64c60-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8ab6c190-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling 200 24ms","method":"POST","requestID":"8ab6c190-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8abb5570-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8abbf1b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d27d56c9-e359-4e4a-8c74-ae6e653922b1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.7892041} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.754237,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"65d46f1d662ead8ba977c7efb98dc276"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65d46f1d662ead8ba977c7efb98dc276"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8abb5570-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","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 143ms","method":"POST","requestID":"65d46f1d662ead8ba977c7efb98dc276","responseTime":143,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8abb5570-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71689076-a086-45e2-9258-1d16e8cee51f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.792675} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.822249,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8abbf1b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","rebac_allow":false,"scope_allow":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":"8abbf1b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8abb5570-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling 200 14ms","method":"POST","requestID":"8abb5570-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"84949e8af49fee45b32316f071cb235c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84949e8af49fee45b32316f071cb235c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8abbf1b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling 200 12ms","method":"POST","requestID":"8abbf1b0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84949e8af49fee45b32316f071cb235c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8abe1490-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664125,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"84949e8af49fee45b32316f071cb235c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84949e8af49fee45b32316f071cb235c","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05f186d2-7f14-404b-b4ce-c21301bc56e4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.807352} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.202207,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8abe1490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","rebac_allow":false,"scope_allow":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":"8abe1490-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8abe1490-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.860834738Z"}]},"request_id":"783b83d4-9e4b-476b-8b72-fc61121f6174","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.812193} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling 200 11ms","method":"POST","requestID":"8abe1490-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"84949e8af49fee45b32316f071cb235c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Building connection plan","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"594901e2-fcaa-451e-95ff-904a47f4aee8"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"606b3d21-9568-485a-bc94-5c70ec7015fe"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"fdc89920-32cf-44d0-a3ec-01206a6f33e7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"65d46f1d662ead8ba977c7efb98dc276"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"65d46f1d662ead8ba977c7efb98dc276"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84949e8af49fee45b32316f071cb235c"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 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":"84949e8af49fee45b32316f071cb235c"} device-1 | {"level":"info","message":"GET /devices/61f1dd12-4304-462f-a574-a551ef5605c8? 200 17ms","method":"GET","requestID":"84949e8af49fee45b32316f071cb235c","responseTime":17,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8?"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.809693,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o","level":"info","message":"auth send jwt","requestID":"8727e4ddc61c4e749f94dd632c886981"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8727e4ddc61c4e749f94dd632c886981","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8727e4ddc61c4e749f94dd632c886981"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697922,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8727e4ddc61c4e749f94dd632c886981","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835443,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0M30.m5MJRNGcF_SsXGxcgbkmZlIjudDDr0n-fjXk9yfmC7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8727e4ddc61c4e749f94dd632c886981","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2463c345-9493-4a21-8827-d2447f2ea817","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.8315663} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87c5368c-2cca-48f0-a622-2621d2a34909","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.8319576} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:22.933994822Z"}]},"request_id":"0a968e1c-6ba8-43e7-8200-5b42fe2e5811","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.8330986} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8727e4ddc61c4e749f94dd632c886981","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8727e4ddc61c4e749f94dd632c886981"} gateway-1 | {"time_local":"28/Aug/2024:08:57:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 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":"8727e4ddc61c4e749f94dd632c886981"} device-1 | {"level":"info","message":"GET /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb? 200 23ms","method":"GET","requestID":"8727e4ddc61c4e749f94dd632c886981","responseTime":23,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3'","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3'","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8ac03770-651b-11ef-b0da-d12cff5a1914"} 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":"8ac03770-651b-11ef-b0da-d12cff5a1914","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":"8ac03770-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"65d46f1d662ead8ba977c7efb98dc276"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8ac9fb70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f48602ba-cc01-467c-a499-af923d7e1648","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.8844252} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.261194,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8ac9fb70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","rebac_allow":false,"scope_allow":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":"8ac9fb70-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8ac9fb70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling 200 9ms","method":"POST","requestID":"8ac9fb70-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8acbf740-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16c3612d-bf70-4560-8317-4d6d9ed27bb9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835443.896508} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.085983,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8acbf740-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8acbf740-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8acbf740-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling 200 9ms","method":"POST","requestID":"8acbf740-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling"} device-1 | {"device":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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/50c95186-98a5-4017-aff3-e9a95744c4c3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d89add04626e112e462dd98f7ef2ac4e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d89add04626e112e462dd98f7ef2ac4e","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/61f1dd12-4304-462f-a574-a551ef5605c8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"}}},"level":"info","message":"received a callback","requestID":"d89add04626e112e462dd98f7ef2ac4e"} device-1 | {"device":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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 9ms","method":"POST","requestID":"d89add04626e112e462dd98f7ef2ac4e","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"d89add04626e112e462dd98f7ef2ac4e"} device-1 | {"device":"61f1dd12-4304-462f-a574-a551ef5605c8","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 | {"data":{"peerconnection":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"50c95186-98a5-4017-aff3-e9a95744c4c3","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/50c95186-98a5-4017-aff3-e9a95744c4c3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"418061279c0cc73d66be5b7e81cc0205","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"418061279c0cc73d66be5b7e81cc0205","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/61f1dd12-4304-462f-a574-a551ef5605c8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"}}},"level":"info","message":"received a callback","requestID":"418061279c0cc73d66be5b7e81cc0205"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8c064c00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:25Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F50c95186-98a5-4017-aff3-e9a95744c4c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4ba7428-1119-4899-be4d-60273b44bbde","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835445.9564872} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.134821,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c064c00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3","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":"8c064c00-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8c064c00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3 200 9ms","method":"GET","requestID":"8c064c00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"418061279c0cc73d66be5b7e81cc0205","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"418061279c0cc73d66be5b7e81cc0205"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c0ba330-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:25Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b0af051-37db-4175-bd4d-927d5c6823c7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835445.991778} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.395861,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c0ba330-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","rebac_allow":false,"scope_allow":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":"8c0ba330-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c0ba330-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling 200 9ms","method":"POST","requestID":"8c0ba330-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c0d77f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65077ce7-e47e-4d8b-a855-6933fb240cfc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.004562} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.293628,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c0d77f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c0d77f0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c0d77f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling 200 11ms","method":"POST","requestID":"8c0d77f0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6227e837-1566-4317-8a98-cb111a0cffb2","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.999571,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5d93cb1c4ea09a0d330eed496f54b2e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6227e837-1566-4317-8a98-cb111a0cffb2","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6227e837-1566-4317-8a98-cb111a0cffb2 HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3"} experiment-1 | {"level":"info","message":"GET /experiments/6227e837-1566-4317-8a98-cb111a0cffb2 200 12ms","method":"GET","requestID":"5d93cb1c4ea09a0d330eed496f54b2e3","responseTime":12,"status":200,"url":"/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"d8a620d6d34308c56f841a9e49991c74"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d8a620d6d34308c56f841a9e49991c74","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6227e837-1566-4317-8a98-cb111a0cffb2","requestID":"d8a620d6d34308c56f841a9e49991c74"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.889033,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d8a620d6d34308c56f841a9e49991c74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d8a620d6d34308c56f841a9e49991c74","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Attempting to finish experiment","requestID":"d8a620d6d34308c56f841a9e49991c74"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.779603,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"61f1dd12-4304-462f-a574-a551ef5605c8","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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":"9abc3ee0-2713-41dd-8a78-365cd2d64dcb","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/50c95186-98a5-4017-aff3-e9a95744c4c3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb33c620b852916a943d10803db6aca0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb33c620b852916a943d10803db6aca0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a12992d27b86288cbfcb4ac0fe103a55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a12992d27b86288cbfcb4ac0fe103a55","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/61f1dd12-4304-462f-a574-a551ef5605c8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"}}},"level":"info","message":"received a callback","requestID":"cb33c620b852916a943d10803db6aca0"} 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/61f1dd12-4304-462f-a574-a551ef5605c8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"}}},"level":"info","message":"received a callback","requestID":"a12992d27b86288cbfcb4ac0fe103a55"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F50c95186-98a5-4017-aff3-e9a95744c4c3': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F50c95186-98a5-4017-aff3-e9a95744c4c3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"4fdc4ca6-8dc4-4db3-bfe2-e30da3b737e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.0924342} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1acad0e2-45c1-46c1-a0b2-5fc543b57fb3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.0930073} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"50c95186-98a5-4017-aff3-e9a95744c4c3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3 204 40ms","method":"DELETE","requestID":"8c178a10-651b-11ef-b0da-d12cff5a1914","responseTime":40,"status":204,"url":"/peerconnections/50c95186-98a5-4017-aff3-e9a95744c4c3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"},"level":"info","message":"Successfully finished experiment","requestID":"d8a620d6d34308c56f841a9e49991c74"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c203ca0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F61f1dd12-4304-462f-a574-a551ef5605c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30da49a7-6a60-4e8e-a6b7-f7ea593c8817","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.1268764} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.91022,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c203ca0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/61f1dd12-4304-462f-a574-a551ef5605c8","object_type":"device","rebac_allow":false,"scope_allow":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":"8c203ca0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c203ca0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/61f1dd12-4304-462f-a574-a551ef5605c8/signaling 200 11ms","method":"POST","requestID":"8c203ca0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/61f1dd12-4304-462f-a574-a551ef5605c8/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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0570f07a-bd1e-4bb1-b92b-9aee801516e9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.1377401} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8c228690-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6227e837-1566-4317-8a98-cb111a0cffb2': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6227e837-1566-4317-8a98-cb111a0cffb2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"63ec6267-fca8-49f8-ad9e-47d38c0c827b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.1380794} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"d8a620d6d34308c56f841a9e49991c74","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9abc3ee0-2713-41dd-8a78-365cd2d64dcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0516b94d-58d7-4caf-b539-bd9b690d8f8f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.1438918} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.9389,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c228690-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c228690-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8c228690-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling 200 11ms","method":"POST","requestID":"8c228690-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6227e837-1566-4317-8a98-cb111a0cffb2","requestID":"d8a620d6d34308c56f841a9e49991c74"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6227e837-1566-4317-8a98-cb111a0cffb2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8a620d6d34308c56f841a9e49991c74"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +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.610","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"83f54909ab2893e9cfafc12fddfcd5d0"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +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.640","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8ee24b99d8f4f753cd94413bbaf0e3f5"} experiment-1 | {"level":"info","message":"DELETE /experiments/6227e837-1566-4317-8a98-cb111a0cffb2 204 155ms","method":"DELETE","requestID":"d8a620d6d34308c56f841a9e49991c74","responseTime":155,"status":204,"url":"/experiments/6227e837-1566-4317-8a98-cb111a0cffb2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"cb33c620b852916a943d10803db6aca0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"cb33c620b852916a943d10803db6aca0","responseTime":124,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"04076215da7c56ea92cc5e7bfa57dbcf"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9abc3ee0-2713-41dd-8a78-365cd2d64dcb' closed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"a12992d27b86288cbfcb4ac0fe103a55","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"a12992d27b86288cbfcb4ac0fe103a55"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"04076215da7c56ea92cc5e7bfa57dbcf"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.059815,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"04076215da7c56ea92cc5e7bfa57dbcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","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/61f1dd12-4304-462f-a574-a551ef5605c8' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe47c28dd-f682-40a6-b42b-97296597c87b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9468cf26-8191-4baf-86d1-1eafd8ca3825","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.2401817} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9e1a060-5387-44af-8530-7d788e253883","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.2478797} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe47c28dd-f682-40a6-b42b-97296597c87b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"334c955a-702a-473b-839e-19fe1790bd58","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.2605672} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f274838-e7ef-4c2d-8444-d8e3382db858","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.260552} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe47c28dd-f682-40a6-b42b-97296597c87b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe47c28dd-f682-40a6-b42b-97296597c87b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.260551362Z"}]},"request_id":"38e29a54-8840-4877-b79e-a607c72d2db2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.2674408} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"04076215da7c56ea92cc5e7bfa57dbcf"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"04076215da7c56ea92cc5e7bfa57dbcf"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"04076215da7c56ea92cc5e7bfa57dbcf","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"05011c05fa190c92ec6dd0127890ed93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05011c05fa190c92ec6dd0127890ed93","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"05011c05fa190c92ec6dd0127890ed93"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.852165,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"05011c05fa190c92ec6dd0127890ed93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06b72c12-164a-4044-b160-98c57215cf2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"110a4668-4e58-4e2e-84ad-f064f2cb90ac","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3084638} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56c8c647-9ac1-460f-94fd-bc1db58d57a5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3155775} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06b72c12-164a-4044-b160-98c57215cf2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"cd05b650-b2c0-4a08-a0f1-7b1a8344c0b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3276224} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eceae4dc-17b1-4cc4-ae89-84f901bb99b3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3278582} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06b72c12-164a-4044-b160-98c57215cf2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F06b72c12-164a-4044-b160-98c57215cf2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.327606713Z"}]},"request_id":"ad66b0f2-f5b7-438c-a332-9eb75b6307f6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3350067} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"05011c05fa190c92ec6dd0127890ed93"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05011c05fa190c92ec6dd0127890ed93"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"05011c05fa190c92ec6dd0127890ed93","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"f142069ad39b8ab3c329c69b3687b792"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f142069ad39b8ab3c329c69b3687b792","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f142069ad39b8ab3c329c69b3687b792"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.689398,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f142069ad39b8ab3c329c69b3687b792","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3a0a067-7eb7-457e-ac5e-270eef82fb3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bce7e41c-5fca-4bac-9940-f157232c7060","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3593473} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f317f36e-eb0c-4cd8-81a8-7a0300cab389","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3653781} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3a0a067-7eb7-457e-ac5e-270eef82fb3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"207555bf-70de-4620-9c1d-2f7b9b096b2d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3741367} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f974e73c-a3f9-45e4-915a-21994eeddb5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3743486} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3a0a067-7eb7-457e-ac5e-270eef82fb3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa3a0a067-7eb7-457e-ac5e-270eef82fb3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.374121353Z"}]},"request_id":"f6d840e6-0448-4fe2-b065-9472a7aafa36","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.3793306} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f142069ad39b8ab3c329c69b3687b792"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"f142069ad39b8ab3c329c69b3687b792","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f142069ad39b8ab3c329c69b3687b792"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"ddc1cf1ebb31286e217a3e6072361da0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ddc1cf1ebb31286e217a3e6072361da0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ddc1cf1ebb31286e217a3e6072361da0"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.683642,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ddc1cf1ebb31286e217a3e6072361da0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb08f9b61-8d7b-40c6-8bda-3839aa36801a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7f768e8a-92e7-4bb4-86a6-d29ee48dc2e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4095068} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86d04fc0-746b-4fd3-9e9e-4d26d787e1d3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.414954} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb08f9b61-8d7b-40c6-8bda-3839aa36801a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"01aa799f-7d52-44d0-96c9-df477d5e5b4d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4260745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"707f723b-66d8-4d59-8d36-1685cb939c84","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4262748} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb08f9b61-8d7b-40c6-8bda-3839aa36801a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb08f9b61-8d7b-40c6-8bda-3839aa36801a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.426057511Z"}]},"request_id":"71f1aaa4-8442-4fca-a322-7272ebd9f589","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4310567} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ddc1cf1ebb31286e217a3e6072361da0"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"ddc1cf1ebb31286e217a3e6072361da0","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddc1cf1ebb31286e217a3e6072361da0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"8e57803d49335f0b25e4c7d026248271"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8e57803d49335f0b25e4c7d026248271","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8e57803d49335f0b25e4c7d026248271"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.785306,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e57803d49335f0b25e4c7d026248271","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb429f25d-8399-4dee-a734-ac972406ef97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fd92065a-4587-4a4e-aafe-13b4e5661854","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4602506} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae135b0b-4818-43dc-a5aa-3705ccddc69d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.465428} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb429f25d-8399-4dee-a734-ac972406ef97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"096a3a15-0d49-4cf4-a5cd-e1b758f78294","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4772925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbae2f49-23bb-49d2-ba62-c705d009ce19","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.477584} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb429f25d-8399-4dee-a734-ac972406ef97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb429f25d-8399-4dee-a734-ac972406ef97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.477279552Z"}]},"request_id":"d016107a-f94b-4d03-b0b7-e9eb96be2ba4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.4828796} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8e57803d49335f0b25e4c7d026248271"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8e57803d49335f0b25e4c7d026248271"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"8e57803d49335f0b25e4c7d026248271","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"9e9776c1419e407d310ff067657f05e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9e9776c1419e407d310ff067657f05e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9e9776c1419e407d310ff067657f05e8"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.792473,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e9776c1419e407d310ff067657f05e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7a70779-860c-48f1-acb7-87fe1acd6e57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"31eb06d8-19f4-4eff-8d40-7607ad06316e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5156593} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"969ee564-db6f-4f47-ad68-138ef8e336ba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5210416} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7a70779-860c-48f1-acb7-87fe1acd6e57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"4a5c917d-bf88-4313-94c7-008d6f38f715","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5322506} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0949b910-a47f-4ad0-9bc3-4ffdbf330dac","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5325153} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7a70779-860c-48f1-acb7-87fe1acd6e57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7a70779-860c-48f1-acb7-87fe1acd6e57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.532232464Z"}]},"request_id":"31ca2571-691e-452f-8b2e-e6b64f90578f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5370727} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9e9776c1419e407d310ff067657f05e8"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +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":"9e9776c1419e407d310ff067657f05e8"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"9e9776c1419e407d310ff067657f05e8","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.7191,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ced4154-6c31-4d51-834b-bef6a6c4a02b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d3d0c36f-b9df-4b60-9312-f6eee4460852","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5823038} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ef72859-dcb7-41af-b095-5fa28ac64ed1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5883934} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ced4154-6c31-4d51-834b-bef6a6c4a02b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b6f106d9-86dc-4a29-9abc-57b0d9d4e7d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5980983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6f04fb1-8aa7-4281-8107-f3ea2b52eb7f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.5983093} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ced4154-6c31-4d51-834b-bef6a6c4a02b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ced4154-6c31-4d51-834b-bef6a6c4a02b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.598085796Z"}]},"request_id":"ae30cdc1-ecac-4cc0-a260-7ce704b8f778","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6027932} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"a842d199d57a0c65b1b3edbe37ce9f8a","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"8327c4e53d3fc72d8be2946ec43b00d4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8327c4e53d3fc72d8be2946ec43b00d4"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.664981,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8327c4e53d3fc72d8be2946ec43b00d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04d8ac38-dc0c-4923-8353-68a183840b16","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4c788440-4200-4ffa-a1be-40c7e1293806","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6327915} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d7319cb3-406d-41e1-be73-942a11187a3b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6386607} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04d8ac38-dc0c-4923-8353-68a183840b16","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"0e097f0f-52f3-42fd-a1f4-dcf3a040f2e1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6493378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"934befbf-d103-4bcc-bb14-e2f3df13def8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.64946} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04d8ac38-dc0c-4923-8353-68a183840b16","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F04d8ac38-dc0c-4923-8353-68a183840b16","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.649319763Z"}]},"request_id":"2e430397-22b0-49d3-9882-69379949c561","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6541252} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8327c4e53d3fc72d8be2946ec43b00d4"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8327c4e53d3fc72d8be2946ec43b00d4"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"8327c4e53d3fc72d8be2946ec43b00d4","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"1f9d87ed8e750e93bc8843f4d448120e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f9d87ed8e750e93bc8843f4d448120e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1f9d87ed8e750e93bc8843f4d448120e"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.66663,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1f9d87ed8e750e93bc8843f4d448120e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7de1858f-2c96-46c9-bbcb-f16f260075c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6ef4d914-1559-4373-aebf-a98c6acca2cd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.67921} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0deb2c2-08d0-4044-89ef-fd525497f72f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.684066} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7de1858f-2c96-46c9-bbcb-f16f260075c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"d9c3836c-775d-42db-8855-6d8040f6dfaf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6949} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82b86766-c3af-44dc-bafc-069188b46420","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6952486} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7de1858f-2c96-46c9-bbcb-f16f260075c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7de1858f-2c96-46c9-bbcb-f16f260075c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.694883957Z"}]},"request_id":"949bb4fb-460e-43e4-b9b6-4527ce87507d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.6994421} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1f9d87ed8e750e93bc8843f4d448120e"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f9d87ed8e750e93bc8843f4d448120e"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"1f9d87ed8e750e93bc8843f4d448120e","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"e57041b40c0c57be609c95f50b36627f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e57041b40c0c57be609c95f50b36627f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e57041b40c0c57be609c95f50b36627f"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.698639,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e57041b40c0c57be609c95f50b36627f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd32f730e-46ec-4001-a071-cafd6ef9dca8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ea82344b-c730-4061-b1e6-8d31427c5774","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.728861} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64e8c770-b900-4f2b-aa2e-59df9deb7487","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7333298} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd32f730e-46ec-4001-a071-cafd6ef9dca8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"75ad6f43-5033-4bd1-90c1-87fdc4ca0563","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7437787} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd95aae1-9152-4620-9fed-7ac734d86e56","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.743965} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd32f730e-46ec-4001-a071-cafd6ef9dca8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd32f730e-46ec-4001-a071-cafd6ef9dca8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.743728823Z"}]},"request_id":"383b853e-5178-4bc1-8823-8e314fdb80d2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7488065} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e57041b40c0c57be609c95f50b36627f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e57041b40c0c57be609c95f50b36627f"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"e57041b40c0c57be609c95f50b36627f","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"fb39ebcd7c784cfea888c0b239214fab"} device-1 | {"level":"info","message":"postDevices called","requestID":"fb39ebcd7c784cfea888c0b239214fab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fb39ebcd7c784cfea888c0b239214fab","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710828,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fb39ebcd7c784cfea888c0b239214fab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"69be3151-12d8-42f6-b475-4dc86eea4966","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7730336} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b0c3163-81a9-45aa-b656-651ac3f105c7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7779965} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6bc88659-433e-4c23-ada5-f0062373892f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.786923} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de86a4ba-592f-44cc-a6fb-79acd01361eb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7872214} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.786909169Z"}]},"request_id":"a2b11fa8-80e0-4bea-aa35-dcf8b892a4cc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.7913907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fb39ebcd7c784cfea888c0b239214fab"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"fb39ebcd7c784cfea888c0b239214fab","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb39ebcd7c784cfea888c0b239214fab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"b662e069a37982188e7c63ef9fb039c7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b662e069a37982188e7c63ef9fb039c7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b662e069a37982188e7c63ef9fb039c7"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731619,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b662e069a37982188e7c63ef9fb039c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1eb1adb8-0c35-4e2f-a336-98d0fd5f0829","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8202603} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90da9f3f-cf93-431d-bc38-acd7bd3f11cf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8251505} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"10acdf42-befe-406c-9736-a9e280dc9b64","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8358946} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d369400-1094-46d3-b557-0d34df08d3f2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8361068} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.835879581Z"}]},"request_id":"c8530e72-fabd-4c01-85fc-01898be9df0d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8402586} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b662e069a37982188e7c63ef9fb039c7"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b662e069a37982188e7c63ef9fb039c7","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b662e069a37982188e7c63ef9fb039c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"251925942fec12459a1894a10c99cb08"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"251925942fec12459a1894a10c99cb08","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"251925942fec12459a1894a10c99cb08"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.674869,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"251925942fec12459a1894a10c99cb08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0815c49b-7090-4361-9273-fc44f966e115","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8643453} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc3f68cd-6dbd-4d0c-9603-2ecd32d4a605","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.869204} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"41d47365-a2c4-4cb4-bf03-3e1efdee5274","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8796167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc92e80c-b8c1-48a4-9662-acc762f3a4b2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8800225} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.879602166Z"}]},"request_id":"7145d2fc-2fd9-47ab-9d03-29bd357e6f62","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.8840442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"251925942fec12459a1894a10c99cb08"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"251925942fec12459a1894a10c99cb08"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"251925942fec12459a1894a10c99cb08","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"19dc2e7901fc6d9087d8682143bf9a93"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"19dc2e7901fc6d9087d8682143bf9a93","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19dc2e7901fc6d9087d8682143bf9a93"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905566,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"19dc2e7901fc6d9087d8682143bf9a93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19dc2e7901fc6d9087d8682143bf9a93","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.786909169Z"}]},"request_id":"76d1d569-a3d0-41f2-a8d3-79713c70906e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.9273515} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19dc2e7901fc6d9087d8682143bf9a93","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9b9b37a-de8c-46e3-93e6-47cc18a76074","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.933323} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19dc2e7901fc6d9087d8682143bf9a93","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.786909169Z"}]},"request_id":"715fb8ef-9014-4f87-af84-b99d2a5799a0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.9448571} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"19dc2e7901fc6d9087d8682143bf9a93","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19dc2e7901fc6d9087d8682143bf9a93"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f59ed86c-663d-4f41-826b-f986cee8fd26? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19dc2e7901fc6d9087d8682143bf9a93"} device-1 | {"level":"info","message":"PATCH /devices/f59ed86c-663d-4f41-826b-f986cee8fd26? 200 45ms","method":"PATCH","requestID":"19dc2e7901fc6d9087d8682143bf9a93","responseTime":45,"status":200,"url":"/devices/f59ed86c-663d-4f41-826b-f986cee8fd26?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"cc8e8ee387a2d4171f3c04349626d7b2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cc8e8ee387a2d4171f3c04349626d7b2"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091103,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cc8e8ee387a2d4171f3c04349626d7b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.835879581Z"}]},"request_id":"f1a15cae-ff8a-4ac6-bb07-191646bd9e84","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.9627771} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75449e75-4d8e-4495-9c85-058fbc7f6ed4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.9679968} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.835879581Z"}]},"request_id":"cc0fa2a0-3b24-4d2f-a98b-d3ce250e8597","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835446.979053} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cc8e8ee387a2d4171f3c04349626d7b2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c79cb94a-6f04-4816-82e2-253f6a894737? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc8e8ee387a2d4171f3c04349626d7b2"} device-1 | {"level":"info","message":"PATCH /devices/c79cb94a-6f04-4816-82e2-253f6a894737? 200 31ms","method":"PATCH","requestID":"cc8e8ee387a2d4171f3c04349626d7b2","responseTime":31,"status":200,"url":"/devices/c79cb94a-6f04-4816-82e2-253f6a894737?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI","level":"info","message":"auth send jwt","requestID":"b07e0f16922f4bc072861e6fe92dc454"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b07e0f16922f4bc072861e6fe92dc454","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b07e0f16922f4bc072861e6fe92dc454"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.975786,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b07e0f16922f4bc072861e6fe92dc454","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835446,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0Nn0.e3T58qSBYR6Myjr5sE7ijRW02ks4KEy7d_Xf-PrTjtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b07e0f16922f4bc072861e6fe92dc454","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.879602166Z"}]},"request_id":"0c2de7b2-be36-4343-aa41-b990c7fc4b25","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.0007346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b07e0f16922f4bc072861e6fe92dc454","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb2b193b-1dc8-4f64-b7b8-7e39ea2be060","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.0094924} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b07e0f16922f4bc072861e6fe92dc454","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.879602166Z"}]},"request_id":"063365a4-42ac-4ed8-ab78-47a284fa5e35","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.0200255} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b07e0f16922f4bc072861e6fe92dc454","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/623f73a2-65e3-49e6-9155-ff84999d6afa? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b07e0f16922f4bc072861e6fe92dc454"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b07e0f16922f4bc072861e6fe92dc454"} device-1 | {"level":"info","message":"PATCH /devices/623f73a2-65e3-49e6-9155-ff84999d6afa? 200 34ms","method":"PATCH","requestID":"b07e0f16922f4bc072861e6fe92dc454","responseTime":34,"status":200,"url":"/devices/623f73a2-65e3-49e6-9155-ff84999d6afa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"9827edf1ae8dbc78e2773cb898c20212"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9827edf1ae8dbc78e2773cb898c20212"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.861246,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9827edf1ae8dbc78e2773cb898c20212","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff59ed86c-663d-4f41-826b-f986cee8fd26","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.786909169Z"}]},"request_id":"9cfb977e-24a0-47d9-b266-8b35c0ceda69","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.0468397} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717443,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.066039,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235165,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e47c28dd-f682-40a6-b42b-97296597c87b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9827edf1ae8dbc78e2773cb898c20212","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e47c28dd-f682-40a6-b42b-97296597c87b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/06b72c12-164a-4044-b160-98c57215cf2f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9827edf1ae8dbc78e2773cb898c20212","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/06b72c12-164a-4044-b160-98c57215cf2f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a3a0a067-7eb7-457e-ac5e-270eef82fb3b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9827edf1ae8dbc78e2773cb898c20212","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a3a0a067-7eb7-457e-ac5e-270eef82fb3b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.105171,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9827edf1ae8dbc78e2773cb898c20212","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9827edf1ae8dbc78e2773cb898c20212"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f59ed86c-663d-4f41-826b-f986cee8fd26? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9827edf1ae8dbc78e2773cb898c20212"} device-1 | {"level":"info","message":"GET /devices/f59ed86c-663d-4f41-826b-f986cee8fd26? 200 45ms","method":"GET","requestID":"9827edf1ae8dbc78e2773cb898c20212","responseTime":45,"status":200,"url":"/devices/f59ed86c-663d-4f41-826b-f986cee8fd26?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d292add8c4796ce6ca3146ceeeae32bc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"d292add8c4796ce6ca3146ceeeae32bc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668963,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c79cb94a-6f04-4816-82e2-253f6a894737","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc79cb94a-6f04-4816-82e2-253f6a894737","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.835879581Z"}]},"request_id":"a38b2b42-ce76-4e68-8655-a46e904a2907","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.0950792} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666569,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.543611,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78498,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.537508,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b08f9b61-8d7b-40c6-8bda-3839aa36801a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b08f9b61-8d7b-40c6-8bda-3839aa36801a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b429f25d-8399-4dee-a734-ac972406ef97","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b429f25d-8399-4dee-a734-ac972406ef97","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7a70779-860c-48f1-acb7-87fe1acd6e57","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b7a70779-860c-48f1-acb7-87fe1acd6e57","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ced4154-6c31-4d51-834b-bef6a6c4a02b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/3ced4154-6c31-4d51-834b-bef6a6c4a02b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.877047,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264107,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d292add8c4796ce6ca3146ceeeae32bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d292add8c4796ce6ca3146ceeeae32bc"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c79cb94a-6f04-4816-82e2-253f6a894737? 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":"d292add8c4796ce6ca3146ceeeae32bc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/c79cb94a-6f04-4816-82e2-253f6a894737? 200 40ms","method":"GET","requestID":"d292add8c4796ce6ca3146ceeeae32bc","responseTime":40,"status":200,"url":"/devices/c79cb94a-6f04-4816-82e2-253f6a894737?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.818198,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/623f73a2-65e3-49e6-9155-ff84999d6afa","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F623f73a2-65e3-49e6-9155-ff84999d6afa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:26.879602166Z"}]},"request_id":"09f45ff9-bcf4-4266-936d-a76b8f25c601","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.142368} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:48644","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.861865,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45414","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.816215,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817476,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773447,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/04d8ac38-dc0c-4923-8353-68a183840b16","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/04d8ac38-dc0c-4923-8353-68a183840b16","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7de1858f-2c96-46c9-bbcb-f16f260075c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7de1858f-2c96-46c9-bbcb-f16f260075c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d32f730e-46ec-4001-a071-cafd6ef9dca8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d32f730e-46ec-4001-a071-cafd6ef9dca8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f59ed86c-663d-4f41-826b-f986cee8fd26","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77"} device-1 | {"level":"info","message":"GET /devices/623f73a2-65e3-49e6-9155-ff84999d6afa? 200 37ms","method":"GET","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77","responseTime":37,"status":200,"url":"/devices/623f73a2-65e3-49e6-9155-ff84999d6afa?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/623f73a2-65e3-49e6-9155-ff84999d6afa? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77e77deaddfdb39dc96e2eb40d9d9d77"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"2981b008bf57fa70c32846e3d1dda4ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2981b008bf57fa70c32846e3d1dda4ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2981b008bf57fa70c32846e3d1dda4ab"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.828869,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2981b008bf57fa70c32846e3d1dda4ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"491735ab-2958-4842-9cf5-cc1286a71e0b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.224246} authorization-1 | {"level":"info","message":"POST /relations/query 200 29ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","responseTime":29,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9c8fb38-17fd-4ffc-b9fb-fc01f9b588aa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2319725} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"69fbed0c-ab4e-4420-b20e-b5d0066291bf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.242982} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ba22f29-34b1-4b7b-8075-b93aa9292484","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2432175} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.242962421Z"}]},"request_id":"c6b2e979-362d-4a19-84c2-4e4f04926f68","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2487} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2981b008bf57fa70c32846e3d1dda4ab"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.078","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2981b008bf57fa70c32846e3d1dda4ab"} device-1 | {"level":"info","message":"POST /devices? 201 72ms","method":"POST","requestID":"2981b008bf57fa70c32846e3d1dda4ab","responseTime":72,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"3f407ded9643eb1b066347000b292878"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3f407ded9643eb1b066347000b292878","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3f407ded9643eb1b066347000b292878"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.893252,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3f407ded9643eb1b066347000b292878","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ae085eb3-2e71-4b81-b7ac-80cf4017027b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2752793} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df6de351-3c9c-4abe-bea4-85966647edde","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2808354} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"7cd1a125-e180-4aca-9aa3-8cfef2ef71f7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2905288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70817948-2247-4fa9-968f-0cb48600c4b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.2907789} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.290505960Z"}]},"request_id":"b730811b-cece-482a-9e54-f32dd248aa7b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.29485} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3f407ded9643eb1b066347000b292878"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f407ded9643eb1b066347000b292878"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"3f407ded9643eb1b066347000b292878","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg","level":"info","message":"auth send jwt","requestID":"5f8b1d249721700cac23246b2890c2b9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5f8b1d249721700cac23246b2890c2b9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5f8b1d249721700cac23246b2890c2b9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.666538,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5f8b1d249721700cac23246b2890c2b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835447,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0N30.pqa3iYQxGNnZdBZ_dzuDE1xps1aJ_erOhKlH-cD-JXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b62b4f14-e6be-4b09-9315-a519bf288784","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.3239946} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30e5cdff-840f-4921-a1c1-8dad41b7124e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.329255} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"33c684e9-6c53-4379-b27d-ffda1b74af21","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.340761} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e47eaa14-f0ee-4278-a592-47027af1e01c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.340996} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.340737703Z"}]},"request_id":"bc8e5575-27af-42b0-92ef-af1b9a4e6c41","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835447.346758} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5f8b1d249721700cac23246b2890c2b9"} gateway-1 | {"time_local":"28/Aug/2024:08:57:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f8b1d249721700cac23246b2890c2b9"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"5f8b1d249721700cac23246b2890c2b9","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f9db49be5be1b33b893b36fb71216f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f9db49be5be1b33b893b36fb71216f8","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"13fc655774a514c6889758e8fd3d7fc0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"13fc655774a514c6889758e8fd3d7fc0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/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":"0f9db49be5be1b33b893b36fb71216f8"} device-1 | {"level":"info","message":"OPTIONS /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/websocket 200 1ms","method":"OPTIONS","requestID":"0f9db49be5be1b33b893b36fb71216f8","responseTime":1,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/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":"13fc655774a514c6889758e8fd3d7fc0"} device-1 | {"level":"info","message":"OPTIONS /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/websocket 200 0ms","method":"OPTIONS","requestID":"13fc655774a514c6889758e8fd3d7fc0","responseTime":0,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"ea2910cfd7662e6b971f81ee64b98b23"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ea2910cfd7662e6b971f81ee64b98b23","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea2910cfd7662e6b971f81ee64b98b23"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896073,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ea2910cfd7662e6b971f81ee64b98b23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ea2910cfd7662e6b971f81ee64b98b23","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937109,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f51ccdb21bbb99b90464e5ebbb7c5469","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/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":"f51ccdb21bbb99b90464e5ebbb7c5469"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/websocket 200 18ms","method":"POST","requestID":"f51ccdb21bbb99b90464e5ebbb7c5469","responseTime":18,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea2910cfd7662e6b971f81ee64b98b23"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/websocket 200 35ms","method":"POST","requestID":"ea2910cfd7662e6b971f81ee64b98b23","responseTime":35,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/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":"ea2910cfd7662e6b971f81ee64b98b23"} device-1 | {"level":"info","message":"device 'http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"82510070e321cafc4bd983dbdb8e64b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"82510070e321cafc4bd983dbdb8e64b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82510070e321cafc4bd983dbdb8e64b1"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.074791,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"82510070e321cafc4bd983dbdb8e64b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"82510070e321cafc4bd983dbdb8e64b1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.340737703Z"}]},"request_id":"e3438e85-ceeb-4ea8-883e-ae96fa924978","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.3765652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82510070e321cafc4bd983dbdb8e64b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82510070e321cafc4bd983dbdb8e64b1"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 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":"82510070e321cafc4bd983dbdb8e64b1"} device-1 | {"level":"info","message":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 200 13ms","method":"GET","requestID":"82510070e321cafc4bd983dbdb8e64b1","responseTime":13,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"062ed0ca0c9c003c63f809e5e8292537"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"062ed0ca0c9c003c63f809e5e8292537","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"062ed0ca0c9c003c63f809e5e8292537"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.822573,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"062ed0ca0c9c003c63f809e5e8292537","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"062ed0ca0c9c003c63f809e5e8292537","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to run experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to book experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully booked experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881324,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.58505,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a7a5837-8cda-4f78-ad0a-72f2e3ebf098","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.290505960Z"}]},"request_id":"c0e05d78-1692-4e76-9ad6-2652692b2dec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.4432757} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.340737703Z"}]},"request_id":"4dbbc9d7-6cc5-46f3-bfe7-c18f28d1084b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.444466} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 200 16ms","method":"GET","requestID":"8e19c2b0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047139,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/4a7a5837-8cda-4f78-ad0a-72f2e3ebf098? 200 22ms","method":"GET","requestID":"8e197490-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/4a7a5837-8cda-4f78-ad0a-72f2e3ebf098?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Setting up experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully locked booking for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to update booking for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully updated booking for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully set up experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e227540-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully running experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e231180-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743102,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e227540-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8e227540-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612022,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.242962421Z"}]},"request_id":"52b97a6b-c8a4-43e8-9868-aa58a34b0ef3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.50462} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"150e1b62-a377-431b-bbdb-8414fd3810d2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5050461} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e227540-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.340737703Z"}]},"request_id":"8ec56e41-4a5f-4baf-a7fe-a12776425a2e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5055525} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.067074,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e231180-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","rebac_allow":false,"scope_allow":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":"8e231180-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e227540-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6? 200 20ms","method":"GET","requestID":"8e227540-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e231180-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling 200 17ms","method":"POST","requestID":"8e231180-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 200 20ms","method":"GET","requestID":"8e22c360-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e25f7b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e2645d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff8e060f4-c60d-45f1-88b3-c96aa9b8b180#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff8e060f4-c60d-45f1-88b3-c96aa9b8b180","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"09fc0b93-907d-45be-a8dc-860ff62d8a53","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.517682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2dc6dc69-2b6f-4409-a7a6-03a00d5e9d19","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.517882} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28fa7387-f147-4df4-80f6-111a7791b2e5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5201223} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"062ed0ca0c9c003c63f809e5e8292537","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.222174,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e25f7b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","rebac_allow":false,"scope_allow":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":"8e25f7b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4991a01-9703-4afa-ab0d-1ddc6c4c24cc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5240638} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.814666,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e2645d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e2645d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"062ed0ca0c9c003c63f809e5e8292537"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"level":"info","message":"POST /experiments? 201 138ms","method":"POST","requestID":"062ed0ca0c9c003c63f809e5e8292537","responseTime":138,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e25f7b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling 200 14ms","method":"POST","requestID":"8e25f7b0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e2645d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling 200 14ms","method":"POST","requestID":"8e2645d0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"2a57d41bc3b6d3c8c3043a11019671bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2a57d41bc3b6d3c8c3043a11019671bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e28dde0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a57d41bc3b6d3c8c3043a11019671bc"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcc2b6e3-c578-44f1-9e14-7140d90acd80","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5392265} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899082,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2a57d41bc3b6d3c8c3043a11019671bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a57d41bc3b6d3c8c3043a11019671bc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.552607,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e28dde0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","rebac_allow":false,"scope_allow":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":"8e28dde0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.242962421Z"}]},"request_id":"dbb6388a-f4ce-4825-830f-dfa0f7529978","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5450659} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e28dde0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a57d41bc3b6d3c8c3043a11019671bc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling 200 12ms","method":"POST","requestID":"8e28dde0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Building connection plan","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"b784e3c1-e03b-493f-a47e-22500b9c7858"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"b44702ba-de54-446e-bbf1-390dd2056521"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1c8903b1-6612-4f41-a7e5-78d308f19675"}]},"level":"info","message":"Built pairwise service configurations","requestID":"062ed0ca0c9c003c63f809e5e8292537"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"062ed0ca0c9c003c63f809e5e8292537"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a57d41bc3b6d3c8c3043a11019671bc"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a57d41bc3b6d3c8c3043a11019671bc"} device-1 | {"level":"info","message":"GET /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6? 200 16ms","method":"GET","requestID":"2a57d41bc3b6d3c8c3043a11019671bc","responseTime":16,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.767366,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"020f1f8e95ad68025f76f8b4975ebc2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"020f1f8e95ad68025f76f8b4975ebc2d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"020f1f8e95ad68025f76f8b4975ebc2d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770783,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"020f1f8e95ad68025f76f8b4975ebc2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"020f1f8e95ad68025f76f8b4975ebc2d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"c48fda8b-b4b6-4dab-a6d1-3ce9aa55cbc6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5660536} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"414fb50e-f526-4d1a-b7bf-310d0063bcb5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.56616} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:27.340737703Z"}]},"request_id":"8e1ef7f3-c7a8-4723-a2ac-65cfc43537c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.5671191} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"020f1f8e95ad68025f76f8b4975ebc2d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"020f1f8e95ad68025f76f8b4975ebc2d"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 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":"020f1f8e95ad68025f76f8b4975ebc2d"} device-1 | {"level":"info","message":"GET /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7? 200 15ms","method":"GET","requestID":"020f1f8e95ad68025f76f8b4975ebc2d","responseTime":15,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01'","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01'","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} 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":"8e2b27d0-651b-11ef-b0da-d12cff5a1914","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":"8e2b27d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","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/feb7a204-5392-4ace-b71f-2d8f65c29f01","device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","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/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"062ed0ca0c9c003c63f809e5e8292537"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e349db0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1228dae6-d0a1-4fb2-9ac8-c2da2655e049","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.6167538} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.826144,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e349db0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e349db0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e349db0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling 200 13ms","method":"POST","requestID":"8e349db0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 598784131735761531 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:00R1\r\na=ice-pwd:RbKvZmQRQUofcoiQjeAOvhkt\r\na=ice-options:trickle\r\na=fingerprint:sha-256 93:0B:BC:C7:2A:B4:63:7B:62:6E:28:C9:3E:C3:66:E3:55:F3:AA:67:9B:05:9B:2A:B0:FC:C1:4E:EF:1C:90:E9\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e37f910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e37f910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling 200 10ms","method":"POST","requestID":"8e37f910-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3561671771289173648 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:tJ5q\r\na=ice-pwd:o+5PHLxf9bi7hzuFbvogk3Pb\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B2:12:B3:70:50:43:03:DE:70:72:05:1D:DD:C1:E7:8F:B7:FF:B5:FF:AA:D0:86:A2:5D:C9:4D:64:28:8A:A7: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":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2922526965 1 udp 2113937151 80cff406-643f-4feb-9feb-619fba5913a0.local 49903 typ host generation 0 ufrag tJ5q network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","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/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7'"} device-1 | {"content":{"candidate":"candidate:1025087974 1 udp 1677729535 141.24.211.56 49903 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tJ5q network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4db54154-774a-46f4-8b89-8152e0a0c80b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.637776} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.576496,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e37f910-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","rebac_allow":false,"scope_allow":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":"8e37f910-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7'"} device-1 | {"content":{"candidate":"candidate:904937535 1 udp 2113937151 5209c989-a39d-4abc-9cea-4d771956e68f.local 44555 typ host generation 0 ufrag 00R1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2799427884 1 udp 1677729535 141.24.211.56 44555 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 00R1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","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/165af5ff-a286-49bc-89b9-ae279fba2ed6'"} device-1 | {"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","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/feb7a204-5392-4ace-b71f-2d8f65c29f01' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"35d20bc08dba03cd3ccef114343daa4e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"35d20bc08dba03cd3ccef114343daa4e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"}}},"level":"info","message":"received a callback","requestID":"35d20bc08dba03cd3ccef114343daa4e"} device-1 | {"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","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":"35d20bc08dba03cd3ccef114343daa4e","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"35d20bc08dba03cd3ccef114343daa4e"} device-1 | {"device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","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/feb7a204-5392-4ace-b71f-2d8f65c29f01' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2acdcaaf53d0e089d29ffc7fed078436","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2acdcaaf53d0e089d29ffc7fed078436","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/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"}}},"level":"info","message":"received a callback","requestID":"2acdcaaf53d0e089d29ffc7fed078436"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8e43b8e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffeb7a204-5392-4ace-b71f-2d8f65c29f01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d7450c1-b09d-4658-8f01-2f1f1e86dacd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.714934} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.425479,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e43b8e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","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":"8e43b8e0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8e43b8e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01 200 8ms","method":"GET","requestID":"8e43b8e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.395811,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cd3d4c4485dd0b43016dd70d6354cb6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 85ms","method":"POST","requestID":"2acdcaaf53d0e089d29ffc7fed078436","responseTime":85,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.087","http_referrer":"","http_user_agent":"node-fetch","requestID":"2acdcaaf53d0e089d29ffc7fed078436"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e4fede0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c"} experiment-1 | {"level":"info","message":"GET /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180 200 20ms","method":"GET","requestID":"cd3d4c4485dd0b43016dd70d6354cb6c","responseTime":20,"status":200,"url":"/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2157d4b-cfcf-4454-9504-0de79b360182","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.794712} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912365,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e4fede0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e4fede0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d5e556ad3ff5b62d5e1df9a33312c611","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e4fede0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling 200 9ms","method":"POST","requestID":"8e4fede0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.6831,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e51e9b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d5e556ad3ff5b62d5e1df9a33312c611","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5e556ad3ff5b62d5e1df9a33312c611","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f06acd41-47ec-4910-b0af-2efb589163b3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.808885} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.85088,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e51e9b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","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":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Attempting to finish experiment","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8e51e9b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8e537050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e51e9b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling 200 13ms","method":"POST","requestID":"8e51e9b0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.915212,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e537050-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e537050-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","device":"5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01","device":"165af5ff-a286-49bc-89b9-ae279fba2ed6","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/feb7a204-5392-4ace-b71f-2d8f65c29f01' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00903ee2c19ec1627c218f9322f5c2f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"00903ee2c19ec1627c218f9322f5c2f5","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/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"}}},"level":"info","message":"received a callback","requestID":"00903ee2c19ec1627c218f9322f5c2f5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f2735729b0e6d2463720ffbb1ecb64a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffeb7a204-5392-4ace-b71f-2d8f65c29f01': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffeb7a204-5392-4ace-b71f-2d8f65c29f01","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"1c12ae2d-4a2c-4092-9566-7a2d3d9164c4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.8331428} 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/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"}}},"level":"info","message":"received a callback","requestID":"5f2735729b0e6d2463720ffbb1ecb64a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f2735729b0e6d2463720ffbb1ecb64a","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f671a9b6-4b29-462c-80a9-098c55e0ac1f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.8334312} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8e537050-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"feb7a204-5392-4ace-b71f-2d8f65c29f01","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8e537050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01 204 36ms","method":"DELETE","requestID":"8e537050-651b-11ef-b0da-d12cff5a1914","responseTime":36,"status":204,"url":"/peerconnections/feb7a204-5392-4ace-b71f-2d8f65c29f01"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"},"level":"info","message":"Successfully finished experiment","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e5badb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61df5d6d-09d8-4e8b-8179-040e9c94d5fd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.872118} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.682305,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e5badb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e5badb0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e5badb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling 200 9ms","method":"POST","requestID":"8e5badb0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8e5d5b60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F165af5ff-a286-49bc-89b9-ae279fba2ed6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e6f4731-5370-4a00-9e17-415a94ac19d4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.8830159} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.257618,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e5d5b60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6","object_type":"device","rebac_allow":false,"scope_allow":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":"8e5d5b60-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff8e060f4-c60d-45f1-88b3-c96aa9b8b180': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff8e060f4-c60d-45f1-88b3-c96aa9b8b180","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"7eb992c3-cdb8-4b5d-989c-1e275e9edf1a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.8868475} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8e5d5b60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/signaling 200 10ms","method":"POST","requestID":"8e5d5b60-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/165af5ff-a286-49bc-89b9-ae279fba2ed6/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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2adca301-697d-48db-9677-f3140832a315","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.8872268} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"d5e556ad3ff5b62d5e1df9a33312c611","responseTime":24,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5e556ad3ff5b62d5e1df9a33312c611"} experiment-1 | {"level":"info","message":"DELETE /experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180 204 144ms","method":"DELETE","requestID":"d5e556ad3ff5b62d5e1df9a33312c611","responseTime":144,"status":204,"url":"/experiments/f8e060f4-c60d-45f1-88b3-c96aa9b8b180"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"00903ee2c19ec1627c218f9322f5c2f5","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"00903ee2c19ec1627c218f9322f5c2f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"5f2735729b0e6d2463720ffbb1ecb64a","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f2735729b0e6d2463720ffbb1ecb64a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +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.618","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b7779dde01091820bdcae79c675d56e4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.300167,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2645","request_time":"0.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":"a47e7b98c0a8aa863e2a9795c2831167"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5bba7fe2-d4d5-42a0-b1e9-420bc98e91a7' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5501c1be-6824-4d61-8373-ffbcb5c87172","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.9649127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","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/165af5ff-a286-49bc-89b9-ae279fba2ed6' 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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e673a066-e88f-4aaf-b160-528041b3974f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.970212} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6e643c0b-ea11-46cc-8c82-f1d6a6d0baf4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.9796793} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"528bc696-911c-49d2-bdde-dae9a151ea36","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.979944} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"8cbaac8e-0efc-477b-bab3-2c7989a6dede","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835449.9843407} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"1aaf2edd6e46b36b63d6fe3dd5516161","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk","level":"info","message":"auth send jwt","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.700285,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835449,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ0OX0.0JrCp6YrEI7Fm-BOfrX1D8aYw1rZUNPxDxVc4Imx8fk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"afecb6e5-79bb-473d-a64e-137195cc1394","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.0121887} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0c529df-5fe3-46a7-8f3b-4395720100d4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.0166817} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"734882d5-e412-42ac-9a47-36bde37fb2a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.027376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa45a861-ecbc-4673-b273-bebedb33a528","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.0275273} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:30.027350993Z"}]},"request_id":"60691345-6e76-4b55-8f4c-f734a0cc26cf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.0310998} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c"} gateway-1 | {"time_local":"28/Aug/2024:08:57:30 +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":"7c9fdd77c1f2235f57e1ae26ac27fa0c"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"7c9fdd77c1f2235f57e1ae26ac27fa0c","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MH0.x7z4OlJVrKaAy8VS6WUVmFcEQrRUi2MZohn3G74Koek","level":"info","message":"auth send jwt","requestID":"398ddbc5a6fa225ecc027b669bfe846c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"398ddbc5a6fa225ecc027b669bfe846c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"398ddbc5a6fa225ecc027b669bfe846c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:30Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764729,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"398ddbc5a6fa225ecc027b669bfe846c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835450,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MH0.x7z4OlJVrKaAy8VS6WUVmFcEQrRUi2MZohn3G74Koek"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"398ddbc5a6fa225ecc027b669bfe846c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"c3b443c6-1120-4450-bf41-46faeda6a16f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.5643883} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"398ddbc5a6fa225ecc027b669bfe846c","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5b1077a-6121-4c0a-a1b4-86e09ca1b6ec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.5696673} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"398ddbc5a6fa225ecc027b669bfe846c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"607bab08-3300-4d73-9697-b79989f4a634","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835450.5815787} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"398ddbc5a6fa225ecc027b669bfe846c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"398ddbc5a6fa225ecc027b669bfe846c"} gateway-1 | {"time_local":"28/Aug/2024:08:57:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"398ddbc5a6fa225ecc027b669bfe846c"} device-1 | {"level":"info","message":"PATCH /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e 200 30ms","method":"PATCH","requestID":"398ddbc5a6fa225ecc027b669bfe846c","responseTime":30,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MH0.x7z4OlJVrKaAy8VS6WUVmFcEQrRUi2MZohn3G74Koek","level":"info","message":"auth send jwt","requestID":"77f01c706e1992c974deea200c4ebfcf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"77f01c706e1992c974deea200c4ebfcf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"77f01c706e1992c974deea200c4ebfcf"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:30Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159384,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"77f01c706e1992c974deea200c4ebfcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835450,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MH0.x7z4OlJVrKaAy8VS6WUVmFcEQrRUi2MZohn3G74Koek"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77f01c706e1992c974deea200c4ebfcf","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"77f01c706e1992c974deea200c4ebfcf"} gateway-1 | {"time_local":"28/Aug/2024:08:57:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"77f01c706e1992c974deea200c4ebfcf"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/websocket 200 30ms","method":"POST","requestID":"77f01c706e1992c974deea200c4ebfcf","responseTime":30,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1aebe7b84a2314a88d0cbadc754b1f3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1aebe7b84a2314a88d0cbadc754b1f3d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/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":"1aebe7b84a2314a88d0cbadc754b1f3d"} device-1 | {"level":"info","message":"OPTIONS /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/websocket 200 1ms","method":"OPTIONS","requestID":"1aebe7b84a2314a88d0cbadc754b1f3d","responseTime":1,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MX0.hc7dY3p-ogRI0BQ8nFTCTuYktvIk4IFM49A7J4aF8OI","level":"info","message":"auth send jwt","requestID":"f6e146aac4019812fb71f06633d3dfb7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f6e146aac4019812fb71f06633d3dfb7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f6e146aac4019812fb71f06633d3dfb7"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:31Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718023,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f6e146aac4019812fb71f06633d3dfb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835451,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1MX0.hc7dY3p-ogRI0BQ8nFTCTuYktvIk4IFM49A7J4aF8OI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6e146aac4019812fb71f06633d3dfb7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f6e146aac4019812fb71f06633d3dfb7"} gateway-1 | {"time_local":"28/Aug/2024:08:57:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/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":"f6e146aac4019812fb71f06633d3dfb7"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/websocket 200 18ms","method":"POST","requestID":"f6e146aac4019812fb71f06633d3dfb7","responseTime":18,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng","level":"info","message":"auth send jwt","requestID":"cb923f912e35367dcb5141eb67f7af5f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb923f912e35367dcb5141eb67f7af5f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb923f912e35367dcb5141eb67f7af5f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87696,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cb923f912e35367dcb5141eb67f7af5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cb923f912e35367dcb5141eb67f7af5f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"ba08fb27-ff26-4763-b683-a555bf7d9d55","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.0152605} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb923f912e35367dcb5141eb67f7af5f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb923f912e35367dcb5141eb67f7af5f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 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":"cb923f912e35367dcb5141eb67f7af5f"} device-1 | {"level":"info","message":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 200 13ms","method":"GET","requestID":"cb923f912e35367dcb5141eb67f7af5f","responseTime":13,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng","level":"info","message":"auth send jwt","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.618567,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:30.027350993Z"}]},"request_id":"369d3350-af81-4d49-bd32-5bfb5ac5130f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.0318775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37"} gateway-1 | {"time_local":"28/Aug/2024:08:57:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 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":"d900a47b37e0d1c0c3ffe0c45f8cad37"} device-1 | {"level":"info","message":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 200 11ms","method":"GET","requestID":"d900a47b37e0d1c0c3ffe0c45f8cad37","responseTime":11,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng","level":"info","message":"auth send jwt","requestID":"fc993c975b1d51effc0bde8f82b214e4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fc993c975b1d51effc0bde8f82b214e4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fc993c975b1d51effc0bde8f82b214e4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.821821,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fc993c975b1d51effc0bde8f82b214e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fc993c975b1d51effc0bde8f82b214e4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to run experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to book experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully booked experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626743,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622137,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"4b11d28a-e06d-4ef0-9a01-e4ce71ef7614","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.0829833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:30.027350993Z"}]},"request_id":"c81eb9e3-b8a3-4de5-8536-a06a08f6a483","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.0836718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 200 15ms","method":"GET","requestID":"8fac97b0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 200 15ms","method":"GET","requestID":"8facbec0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Setting up experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully set up experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully running experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fb74610-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.017466,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855603,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82dc0c63-e8a1-4070-997c-e516078f8b51","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1521888} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.708796,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fb74610-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","rebac_allow":false,"scope_allow":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":"8fb74610-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"e9c2388f-cdbf-47d6-917c-0bdb2dc681d3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1540637} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:30.027350993Z"}]},"request_id":"0591851f-b020-432c-9912-f5a4a66e2b60","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1573324} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fb74610-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling 200 14ms","method":"POST","requestID":"8fb74610-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a342aca-afec-4da3-8393-f515734c9551#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a342aca-afec-4da3-8393-f515734c9551","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"74d59f60-138d-4a5e-a2b8-6a485ca4b0e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1623218} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9fe69c1-835d-47c7-9426-6ba92fd845de","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1626265} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fba2c40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"fc993c975b1d51effc0bde8f82b214e4","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 200 24ms","method":"GET","requestID":"8fb6a9d0-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 200 24ms","method":"GET","requestID":"8fb6f7f0-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9?"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86fccfaf-8281-4d74-9291-fc9fc5e8d380","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1693401} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.264283,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fba2c40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"8fba2c40-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fbb8bd0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fc993c975b1d51effc0bde8f82b214e4"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"fc993c975b1d51effc0bde8f82b214e4","responseTime":135,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fba2c40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling 200 14ms","method":"POST","requestID":"8fba2c40-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"142cedf8-288b-4cc1-9a8a-c21c19f2277c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.1805246} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.36769,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng","level":"info","message":"auth send jwt","requestID":"ddda4be879d16c05bd5b2c912766a7b5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fbb8bd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ddda4be879d16c05bd5b2c912766a7b5","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"8fbb8bd0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ddda4be879d16c05bd5b2c912766a7b5"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681569,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ddda4be879d16c05bd5b2c912766a7b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fbb8bd0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ddda4be879d16c05bd5b2c912766a7b5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling 200 14ms","method":"POST","requestID":"8fbb8bd0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:29.979664548Z"}]},"request_id":"3fda58f5-5425-47fc-baeb-0441a89cc7a2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.192676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ddda4be879d16c05bd5b2c912766a7b5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fbec020-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ddda4be879d16c05bd5b2c912766a7b5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 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":"ddda4be879d16c05bd5b2c912766a7b5"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf154199-b3e8-4ad4-9dd4-ad7132a81380","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.202965} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.777069,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} device-1 | {"level":"info","message":"GET /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e? 200 21ms","method":"GET","requestID":"ddda4be879d16c05bd5b2c912766a7b5","responseTime":21,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fbec020-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"8fbec020-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng","level":"info","message":"auth send jwt","requestID":"9d1b9197c96c93d8a3fc17f183f45290"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9d1b9197c96c93d8a3fc17f183f45290","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fbec020-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling 200 16ms","method":"POST","requestID":"8fbec020-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9d1b9197c96c93d8a3fc17f183f45290"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Building connection plan","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"3c9f7078-405d-4004-b0bc-0f0dccfb3c06"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d2a22c5e-5b0e-4c71-aaca-bafcd4f2f193"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7daaa973-8037-4a98-b114-5b2c5b11e86c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fc993c975b1d51effc0bde8f82b214e4"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.017873,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9d1b9197c96c93d8a3fc17f183f45290","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d1b9197c96c93d8a3fc17f183f45290","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.818842,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835452,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Mn0.aK-mRrxsiJIYJXZo87jXjLIMUwLVKoFbodfQVTewXng"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:30.027350993Z"}]},"request_id":"374993c7-3f2d-4faf-a5b0-b48633a0c9c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.2221885} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9d1b9197c96c93d8a3fc17f183f45290","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9d1b9197c96c93d8a3fc17f183f45290"} gateway-1 | {"time_local":"28/Aug/2024:08:57:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 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":"9d1b9197c96c93d8a3fc17f183f45290"} device-1 | {"level":"info","message":"GET /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9? 200 20ms","method":"GET","requestID":"9d1b9197c96c93d8a3fc17f183f45290","responseTime":20,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"9070e82c-c147-4796-9200-d41fd256f4b4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.2385838} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14c44d41-7cac-427d-81f2-ccbf35363891","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.2389052} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14'","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14'","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 40ms","method":"POST","requestID":"8fc1cd60-651b-11ef-b0da-d12cff5a1914","responseTime":40,"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":"8fc1cd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","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/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fc993c975b1d51effc0bde8f82b214e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fcd6620-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac187ca8-dde1-4c94-939e-74ddc9eb4698","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.29534} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.702397,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fcd6620-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","rebac_allow":false,"scope_allow":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":"8fcd6620-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fcd6620-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling 200 16ms","method":"POST","requestID":"8fcd6620-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7549715437752342532 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:Jb23\r\na=ice-pwd:6ubWtThQVogaHyLgl6JEGuW4\r\na=ice-options:trickle\r\na=fingerprint:sha-256 68:59:00:63:29:2C:39:AA:AA:B8:AF:2D:CF:E4:7A:ED:C7:8E:B5:1F:1C:83:16:C9:FD:A4:62:D6:DF:3C:DD:80\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fd04c50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9'"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"286bdf2c-be57-41e0-9737-b59682c8e637","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835452.3140829} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.046174,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8fd04c50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"8fd04c50-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fd04c50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling 200 11ms","method":"POST","requestID":"8fd04c50-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling"} device-1 | {"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"e4519792-9fd9-4253-afec-00affbfcbb14","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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/e4519792-9fd9-4253-afec-00affbfcbb14' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e4519792-9fd9-4253-afec-00affbfcbb14","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d26e8bd359c72c81ff625cebc838051b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d26e8bd359c72c81ff625cebc838051b","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/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"}}},"level":"info","message":"received a callback","requestID":"d26e8bd359c72c81ff625cebc838051b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"d26e8bd359c72c81ff625cebc838051b","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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":"d26e8bd359c72c81ff625cebc838051b"} device-1 | {"content":{"candidate":"candidate:2847380765 1 udp 2113937151 5d44aa63-c659-4a49-ba56-ac0c7a5034bc.local 47818 typ host generation 0 ufrag Jb23 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:983315470 1 udp 1677729535 141.24.211.56 47818 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Jb23 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2226163708 1 udp 33562623 141.24.210.113 55287 typ relay raddr 141.24.211.56 rport 47818 generation 0 ufrag Jb23 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","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/c4a7a486-21eb-4b81-92b8-c7c75844e4d9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9'"} device-1 | {"data":{"peerconnection":"e4519792-9fd9-4253-afec-00affbfcbb14","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"e4519792-9fd9-4253-afec-00affbfcbb14","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/e4519792-9fd9-4253-afec-00affbfcbb14' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e4519792-9fd9-4253-afec-00affbfcbb14","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef9a116a67ca21275374b837ef2f39f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ef9a116a67ca21275374b837ef2f39f8","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/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"}}},"level":"info","message":"received a callback","requestID":"ef9a116a67ca21275374b837ef2f39f8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"91085720-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe4519792-9fd9-4253-afec-00affbfcbb14","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"821aa3b2-aac9-4c8d-93ff-283690b9569f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.3594894} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.893105,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"91085720-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","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":"91085720-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"91085720-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14 200 10ms","method":"GET","requestID":"91085720-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"ef9a116a67ca21275374b837ef2f39f8","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"ef9a116a67ca21275374b837ef2f39f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"910c4ec0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"235a3aad-db1f-4ef2-9e6e-67233d966573","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.3854153} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.664351,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"910c4ec0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"910c4ec0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"910c4ec0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling 200 10ms","method":"POST","requestID":"910c4ec0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"910e4a90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69b68a5f-dca5-42be-be01-e0c524b21a21","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.3979115} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.930795,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"910e4a90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"910e4a90-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"910e4a90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling 200 10ms","method":"POST","requestID":"910e4a90-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0","level":"info","message":"auth send jwt","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7a342aca-afec-4da3-8393-f515734c9551","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.766115,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835454,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7a342aca-afec-4da3-8393-f515734c9551","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7a342aca-afec-4da3-8393-f515734c9551 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f"} experiment-1 | {"level":"info","message":"GET /experiments/7a342aca-afec-4da3-8393-f515734c9551 200 9ms","method":"GET","requestID":"d5ddbb1b0d87d45d00a49c3d8ec6414f","responseTime":9,"status":200,"url":"/experiments/7a342aca-afec-4da3-8393-f515734c9551"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0","level":"info","message":"auth send jwt","requestID":"c0a5fcc0461dc8431f853247148917e8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c0a5fcc0461dc8431f853247148917e8","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7a342aca-afec-4da3-8393-f515734c9551","requestID":"c0a5fcc0461dc8431f853247148917e8"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.755836,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c0a5fcc0461dc8431f853247148917e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835454,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0a5fcc0461dc8431f853247148917e8","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Attempting to finish experiment","requestID":"c0a5fcc0461dc8431f853247148917e8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.680353,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835454,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14","device":"c4a7a486-21eb-4b81-92b8-c7c75844e4d9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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":"cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","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/e4519792-9fd9-4253-afec-00affbfcbb14' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e4519792-9fd9-4253-afec-00affbfcbb14","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe4519792-9fd9-4253-afec-00affbfcbb14': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe4519792-9fd9-4253-afec-00affbfcbb14","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"45c5b4d8-3258-4b89-9922-a290f314edef","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.5501997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b60a3f94-1fb1-4469-9f58-2e10828c856d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.5504735} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a39e733279bd2f4dd33c7fd01513922","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1a39e733279bd2f4dd33c7fd01513922","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf4da3abacdcdbae0f1abf6101202daf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cf4da3abacdcdbae0f1abf6101202daf","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/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"}}},"level":"info","message":"received a callback","requestID":"1a39e733279bd2f4dd33c7fd01513922"} 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/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"}}},"level":"info","message":"received a callback","requestID":"cf4da3abacdcdbae0f1abf6101202daf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14 204 39ms","method":"DELETE","requestID":"9123ce60-651b-11ef-b0da-d12cff5a1914","responseTime":39,"status":204,"url":"/peerconnections/e4519792-9fd9-4253-afec-00affbfcbb14"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a342aca-afec-4da3-8393-f515734c9551"},"level":"info","message":"Successfully finished experiment","requestID":"c0a5fcc0461dc8431f853247148917e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"912c0bc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd0dcc28-79ad-44cc-97db-cff62ffbdd6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0688c6a-8897-42c9-959d-14f610534f79","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.5930321} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.597588,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"912c0bc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e","object_type":"device","rebac_allow":false,"scope_allow":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":"912c0bc0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"912c0bc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling 200 9ms","method":"POST","requestID":"912c0bc0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"912de080-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a342aca-afec-4da3-8393-f515734c9551': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a342aca-afec-4da3-8393-f515734c9551","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"4eb0a943-f4be-4deb-beab-64f87a6c09a4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.6001585} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f6a3a0f-93b4-444b-b879-8c89dd9f42fc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.600463} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c0a5fcc0461dc8431f853247148917e8","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4a7a486-21eb-4b81-92b8-c7c75844e4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c898395-924c-49dd-86da-f4fa8aa36a7c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.6084442} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.583521,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"912de080-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"912de080-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"912de080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling 200 13ms","method":"POST","requestID":"912de080-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7a342aca-afec-4da3-8393-f515734c9551","requestID":"c0a5fcc0461dc8431f853247148917e8"} gateway-1 | {"time_local":"28/Aug/2024:08:57:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7a342aca-afec-4da3-8393-f515734c9551 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0a5fcc0461dc8431f853247148917e8"} gateway-1 | {"time_local":"28/Aug/2024:08:57:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"4.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c8a94a3ffe724fedf32b077727e428f5"} experiment-1 | {"level":"info","message":"DELETE /experiments/7a342aca-afec-4da3-8393-f515734c9551 204 140ms","method":"DELETE","requestID":"c0a5fcc0461dc8431f853247148917e8","responseTime":140,"status":204,"url":"/experiments/7a342aca-afec-4da3-8393-f515734c9551"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"1a39e733279bd2f4dd33c7fd01513922","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"1a39e733279bd2f4dd33c7fd01513922"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0","level":"info","message":"auth send jwt","requestID":"d34ca3710a87d158fb55e8dc07057019"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"cf4da3abacdcdbae0f1abf6101202daf","responseTime":116,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d34ca3710a87d158fb55e8dc07057019","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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":"cf4da3abacdcdbae0f1abf6101202daf"} gateway-1 | {"time_local":"28/Aug/2024:08:57:34 +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.681","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"54a43ac29679e011015fec689721e935"} device-1 | {"level":"info","message":"postDevices called","requestID":"d34ca3710a87d158fb55e8dc07057019"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.961418,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d34ca3710a87d158fb55e8dc07057019","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835454,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","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/cd0dcc28-79ad-44cc-97db-cff62ffbdd6e' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ccd8e29f-d1fa-4c57-8e18-00e70e491fc8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.6942844} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f60289b4-ac27-4eb6-bde9-ecab3b6049fb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.699266} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c4a7a486-21eb-4b81-92b8-c7c75844e4d9' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2abd3ccd-3e16-4e22-87e7-ecafe7044632","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7154691} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f7bfc39-ce70-4094-b26a-4db9d061e120","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7156568} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.715446150Z"}]},"request_id":"b7e58fc7-46bb-4bde-88a8-f70dbb80f76c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7204704} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d34ca3710a87d158fb55e8dc07057019"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d34ca3710a87d158fb55e8dc07057019"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"d34ca3710a87d158fb55e8dc07057019","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0","level":"info","message":"auth send jwt","requestID":"742086531025bbef715af803da85107b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"742086531025bbef715af803da85107b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"742086531025bbef715af803da85107b"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.115413,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"742086531025bbef715af803da85107b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835454,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1NH0.o3-UAXJSvmV6WqQQNELPOxf9NI8e70J0OdwKJKcw_n0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"742086531025bbef715af803da85107b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4ff1a524-29eb-4ea5-9967-bbf62a53563a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7581627} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"742086531025bbef715af803da85107b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b6df91a-d134-40f9-ac82-cb4054c9037f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7644923} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"742086531025bbef715af803da85107b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"7db89f5b-41f1-4c97-836b-a4e874388cae","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7752936} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14790a84-bd8f-417d-ac81-b0becdb42fa7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.7756398} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"742086531025bbef715af803da85107b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.775271644Z"}]},"request_id":"f3aa5a48-2bdc-4507-9488-06ea6fc60852","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835454.780632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"742086531025bbef715af803da85107b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"742086531025bbef715af803da85107b"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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":"742086531025bbef715af803da85107b"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"742086531025bbef715af803da85107b","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e5e364004fbbdaa2d76974861d715bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6e5e364004fbbdaa2d76974861d715bb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/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":"6e5e364004fbbdaa2d76974861d715bb"} device-1 | {"level":"info","message":"OPTIONS /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/websocket 200 1ms","method":"OPTIONS","requestID":"6e5e364004fbbdaa2d76974861d715bb","responseTime":1,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742177,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c3977525e0797b455cc1ee30247db72","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c3977525e0797b455cc1ee30247db72","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/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":"3c3977525e0797b455cc1ee30247db72"} device-1 | {"level":"info","message":"OPTIONS /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/websocket 200 1ms","method":"OPTIONS","requestID":"3c3977525e0797b455cc1ee30247db72","responseTime":1,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"3fb9766e512e05f7810341e07fbe7b65"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fb9766e512e05f7810341e07fbe7b65","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3fb9766e512e05f7810341e07fbe7b65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.046","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/websocket 200 42ms","method":"POST","requestID":"5fd0bcb24fcca7b8b9d49d4defb3c3d5","responseTime":42,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/websocket"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.846549,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3fb9766e512e05f7810341e07fbe7b65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fb9766e512e05f7810341e07fbe7b65","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3fb9766e512e05f7810341e07fbe7b65"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/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":"3fb9766e512e05f7810341e07fbe7b65"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/websocket 200 21ms","method":"POST","requestID":"3fb9766e512e05f7810341e07fbe7b65","responseTime":21,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"ed9d06a98a047546cf52d04cc7c441fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ed9d06a98a047546cf52d04cc7c441fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ed9d06a98a047546cf52d04cc7c441fd"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66965,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ed9d06a98a047546cf52d04cc7c441fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ed9d06a98a047546cf52d04cc7c441fd","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.715446150Z"}]},"request_id":"19b464bb-6fed-4fb2-86a5-ae5c3b5a11ea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.7993543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ed9d06a98a047546cf52d04cc7c441fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ed9d06a98a047546cf52d04cc7c441fd"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 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":"ed9d06a98a047546cf52d04cc7c441fd"} device-1 | {"level":"info","message":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 200 12ms","method":"GET","requestID":"ed9d06a98a047546cf52d04cc7c441fd","responseTime":12,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"37914e645dc69c1e4332fb2be895470b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"37914e645dc69c1e4332fb2be895470b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37914e645dc69c1e4332fb2be895470b"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736338,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"37914e645dc69c1e4332fb2be895470b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"37914e645dc69c1e4332fb2be895470b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.775271644Z"}]},"request_id":"b6522ea5-9d8f-4b55-9074-fc1a20186d3b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.8152528} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"37914e645dc69c1e4332fb2be895470b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37914e645dc69c1e4332fb2be895470b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 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":"37914e645dc69c1e4332fb2be895470b"} device-1 | {"level":"info","message":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 200 12ms","method":"GET","requestID":"37914e645dc69c1e4332fb2be895470b","responseTime":12,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"de38945b5423f20f58164a42c82b5413"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"de38945b5423f20f58164a42c82b5413","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"de38945b5423f20f58164a42c82b5413"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.707725,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"de38945b5423f20f58164a42c82b5413","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"de38945b5423f20f58164a42c82b5413","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to run experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to book experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully booked experiment","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92864490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"928692b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704187,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92864490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92864490-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651242,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"928692b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"928692b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.715446150Z"}]},"request_id":"9fbd720c-8f89-4e8f-9b5e-ead5c31fe017","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.8652372} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"92864490-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.775271644Z"}]},"request_id":"11854a25-ab2d-4e7b-928e-d080e358be6e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.866591} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"928692b0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92864490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 200 15ms","method":"GET","requestID":"92864490-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"928692b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 200 14ms","method":"GET","requestID":"928692b0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Setting up experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully set up experiment","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92962310-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully running experiment","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92967130-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715441,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714784,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92962310-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"92962310-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dab851a7-2cca-4937-beef-613841eeca9f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.9698884} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.024904,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92967130-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"92967130-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.775271644Z"}]},"request_id":"6c6b599c-51a7-4117-9b81-d863e9f7a59a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.974411} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92967130-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"92962310-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling 200 13ms","method":"POST","requestID":"92967130-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.715446150Z"}]},"request_id":"bbc788f5-88ee-47d5-bd09-2b0e9a339bff","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.9753578} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487c8935-c155-4b72-98ac-aa9c1719937b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487c8935-c155-4b72-98ac-aa9c1719937b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e6f8d408-06ae-4b98-a8d1-c7e6ec2fb64f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.979598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"184b5567-d2ee-4b74-9b7b-0465552a0258","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.9797285} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"de38945b5423f20f58164a42c82b5413","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92993050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92962310-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 200 23ms","method":"GET","requestID":"92962310-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 200 26ms","method":"GET","requestID":"9295d4f0-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0005649a-e2ab-4938-abca-3926b1c3cc44","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.9860003} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.616125,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92993050-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","rebac_allow":false,"scope_allow":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":"92993050-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"de38945b5423f20f58164a42c82b5413"} gateway-1 | {"time_local":"28/Aug/2024:08:57:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"929ab6f0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"de38945b5423f20f58164a42c82b5413","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92993050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling 200 13ms","method":"POST","requestID":"92993050-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:36Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo","level":"info","message":"auth send jwt","requestID":"54fac2513f293399802f081629a80892"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"54fac2513f293399802f081629a80892","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"daea94f2-f4a9-4ac1-9b59-15dc4aa7cb5a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835456.9978573} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54fac2513f293399802f081629a80892"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.685162,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"929ab6f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"929ab6f0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721566,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"929ab6f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling 200 12ms","method":"POST","requestID":"929ab6f0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"54fac2513f293399802f081629a80892","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54fac2513f293399802f081629a80892","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"929d00e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.715446150Z"}]},"request_id":"e708a478-e7db-47cd-843d-b12f7cce0868","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.0077047} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"54fac2513f293399802f081629a80892","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85aa2e28-f954-4535-8a1e-00ea68284f2f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.012059} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54fac2513f293399802f081629a80892"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.594714,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"929d00e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","rebac_allow":false,"scope_allow":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":"929d00e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 200 16ms","method":"GET","requestID":"54fac2513f293399802f081629a80892","responseTime":16,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e? 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":"54fac2513f293399802f081629a80892"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"929d00e0-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU","level":"info","message":"auth send jwt","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling 200 13ms","method":"POST","requestID":"929d00e0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Building connection plan","requestID":"de38945b5423f20f58164a42c82b5413"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"af7dbca6-9a6c-4eae-9b4d-064acaa84e26"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"661e8d28-b0e2-4723-a37e-d9e28a9f94a2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"aca9b915-99e1-4942-b979-86b595384b87"}]},"level":"info","message":"Built pairwise service configurations","requestID":"de38945b5423f20f58164a42c82b5413"} 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/7d2477ae-7475-4874-a60d-852b8fc6d557"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.734547,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cda0f709f0ad8c90b3b9221bee56b4f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835457,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.936334,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835456,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1Nn0.uOqTnC_FAyZ7jsiJ6tHHUXTlXZ0A_F3-BXLhacb0uHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:34.775271644Z"}]},"request_id":"79a5d88f-f570-459b-8f40-48b851002046","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.0302825} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5"} device-1 | {"level":"info","message":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 200 16ms","method":"GET","requestID":"cda0f709f0ad8c90b3b9221bee56b4f5","responseTime":16,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d2477ae-7475-4874-a60d-852b8fc6d557? 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":"cda0f709f0ad8c90b3b9221bee56b4f5"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"25d40958-4583-4936-a372-1c6b650900a7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.0431786} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce23a574-40a0-4b41-b20c-9a7affd9bc61","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.043356} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c'","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c'","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"929f98f0-651b-11ef-b0da-d12cff5a1914"} 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":"929f98f0-651b-11ef-b0da-d12cff5a1914","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":"929f98f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","device":"7d2477ae-7475-4874-a60d-852b8fc6d557","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} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","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/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"de38945b5423f20f58164a42c82b5413"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92a9ab10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c965fee9-f6f0-487d-8045-86b0b357d8d2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.0942938} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.544704,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92a9ab10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"92a9ab10-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92a9ab10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling 200 21ms","method":"POST","requestID":"92a9ab10-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92ad5490-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43235b43-6b58-4256-a762-b1ff1ed9cdfa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.1182466} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.755033,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92ad5490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"92ad5490-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 4873702020222104521 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:iNo/\r\na=ice-pwd:yC+uGeDlSJ5z/lej4vwbxDcV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0C:8F:34:A8:09:F0:11:F9:6D:CE:AA:2F:62:CC:2E:AB:7F:AE:B4:6C:37:26:43:50:AF:2D:C2:C2:87:01:5C:D8\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92ad5490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling 200 14ms","method":"POST","requestID":"92ad5490-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 98553767321434526 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:7ccM\r\na=ice-pwd:PRs6IGgCes3Me6LWP0iI3fEV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3A:40:D0:DA:45:88:18:1F:4E:2B:A5:1E:8A:66:C3:5A:C2:F5:EC:FB:C4:AD:0D:1F:80:49:34:95:09:9A:04:28\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3557998660 1 udp 2113937151 fda46fe2-862d-4030-94d1-fa71d49ebf1a.local 36311 typ host generation 0 ufrag 7ccM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1194942807 1 udp 1677729535 141.24.211.56 36311 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 7ccM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","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/7d2477ae-7475-4874-a60d-852b8fc6d557'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557'"} device-1 | {"content":{"candidate":"candidate:2987192855 1 udp 2113937151 93cf591d-a5d9-4aff-9623-2035017f9268.local 37136 typ host generation 0 ufrag iNo/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:908171368 1 udp 1677729535 141.24.211.56 37136 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag iNo/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","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/92c91a83-beb9-4d96-a984-bb1fb2b59d4e'"} device-1 | {"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","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/59cffb93-1626-4351-8c84-d9238e993a4c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6b131e49fe876f5012d6d1b7b58650f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a6b131e49fe876f5012d6d1b7b58650f","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/7d2477ae-7475-4874-a60d-852b8fc6d557"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"}}},"level":"info","message":"received a callback","requestID":"a6b131e49fe876f5012d6d1b7b58650f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"a6b131e49fe876f5012d6d1b7b58650f","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6b131e49fe876f5012d6d1b7b58650f"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","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/59cffb93-1626-4351-8c84-d9238e993a4c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e27b57abdf794f4fdc900828ad6756c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e27b57abdf794f4fdc900828ad6756c","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/7d2477ae-7475-4874-a60d-852b8fc6d557"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"}}},"level":"info","message":"received a callback","requestID":"2e27b57abdf794f4fdc900828ad6756c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"92c410e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F59cffb93-1626-4351-8c84-d9238e993a4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1df6af2-f9fd-42d1-bf85-5d32f9f895b3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.2684574} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.077154,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92c410e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","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":"92c410e0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"92c410e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c 200 11ms","method":"GET","requestID":"92c410e0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"2e27b57abdf794f4fdc900828ad6756c","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e27b57abdf794f4fdc900828ad6756c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92c94100-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.069618,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1cc66aa-3f01-4470-a967-84a8d9e514be","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.3016615} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92c94100-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","rebac_allow":false,"scope_allow":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":"92c94100-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92c94100-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling 200 13ms","method":"POST","requestID":"92c94100-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92cbb200-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"010008d4-ba63-4b03-b9e3-8d469704279e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.31744} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.247228,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"92cbb200-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"92cbb200-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92cbb200-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling 200 11ms","method":"POST","requestID":"92cbb200-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU","level":"info","message":"auth send jwt","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/487c8935-c155-4b72-98ac-aa9c1719937b","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.815544,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e0c906d9b1a7a771774a9c8f4299ef7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835457,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/487c8935-c155-4b72-98ac-aa9c1719937b","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/487c8935-c155-4b72-98ac-aa9c1719937b HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b"} experiment-1 | {"level":"info","message":"GET /experiments/487c8935-c155-4b72-98ac-aa9c1719937b 200 10ms","method":"GET","requestID":"e0c906d9b1a7a771774a9c8f4299ef7b","responseTime":10,"status":200,"url":"/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU","level":"info","message":"auth send jwt","requestID":"3f65576f8944b6c6bbadca10b20eef80"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3f65576f8944b6c6bbadca10b20eef80","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/487c8935-c155-4b72-98ac-aa9c1719937b","requestID":"3f65576f8944b6c6bbadca10b20eef80"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.757208,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3f65576f8944b6c6bbadca10b20eef80","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835457,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3f65576f8944b6c6bbadca10b20eef80","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Attempting to finish experiment","requestID":"3f65576f8944b6c6bbadca10b20eef80"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.787768,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835457,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1N30.RR0XsqpsGR_GA7w1IkstfIwRlVf_mVOqJ9KsdQBlYWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","device":"7d2477ae-7475-4874-a60d-852b8fc6d557","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c","device":"92c91a83-beb9-4d96-a984-bb1fb2b59d4e","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/59cffb93-1626-4351-8c84-d9238e993a4c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F59cffb93-1626-4351-8c84-d9238e993a4c': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F59cffb93-1626-4351-8c84-d9238e993a4c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"2297a140-7bc9-4a3d-9fa4-b4d630993cbc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.9542737} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03d70b52847d9092372795beb9a79b78","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71cefa13-1021-4f78-92c3-13c60be38a8b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835457.9544938} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"03d70b52847d9092372795beb9a79b78","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5da12cb3186960d621cbfc3cbaa0d487","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5da12cb3186960d621cbfc3cbaa0d487","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"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":"closed","url":"http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"}}},"level":"info","message":"received a callback","requestID":"03d70b52847d9092372795beb9a79b78"} 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/7d2477ae-7475-4874-a60d-852b8fc6d557"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"}}},"level":"info","message":"received a callback","requestID":"5da12cb3186960d621cbfc3cbaa0d487"} device-1 | {"data":{"peerconnection":"59cffb93-1626-4351-8c84-d9238e993a4c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c 204 110ms","method":"DELETE","requestID":"932ac1f0-651b-11ef-b0da-d12cff5a1914","responseTime":110,"status":204,"url":"/peerconnections/59cffb93-1626-4351-8c84-d9238e993a4c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"},"level":"info","message":"Successfully finished experiment","requestID":"3f65576f8944b6c6bbadca10b20eef80"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93410910-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d2477ae-7475-4874-a60d-852b8fc6d557","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91b850ac-1bc4-4e89-a1aa-87118033a6da","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.0859518} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.330467,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"93410910-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d2477ae-7475-4874-a60d-852b8fc6d557","object_type":"device","rebac_allow":false,"scope_allow":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":"93410910-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93410910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling 200 10ms","method":"POST","requestID":"93410910-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/7d2477ae-7475-4874-a60d-852b8fc6d557/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9342ddd0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92c91a83-beb9-4d96-a984-bb1fb2b59d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c894482-2dca-4e16-be6b-66aa535c7b7b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.0986092} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.232456,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9342ddd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"9342ddd0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9342ddd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling 200 10ms","method":"POST","requestID":"9342ddd0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487c8935-c155-4b72-98ac-aa9c1719937b': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487c8935-c155-4b72-98ac-aa9c1719937b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"05b77375-14d4-4722-be03-2f10d456f9be","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.1079605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f103fa1-cdf3-4229-a425-a6057f488deb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.1081614} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"3f65576f8944b6c6bbadca10b20eef80","responseTime":29,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/487c8935-c155-4b72-98ac-aa9c1719937b","requestID":"3f65576f8944b6c6bbadca10b20eef80"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/487c8935-c155-4b72-98ac-aa9c1719937b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.363","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f65576f8944b6c6bbadca10b20eef80"} experiment-1 | {"level":"info","message":"DELETE /experiments/487c8935-c155-4b72-98ac-aa9c1719937b 204 361ms","method":"DELETE","requestID":"3f65576f8944b6c6bbadca10b20eef80","responseTime":361,"status":204,"url":"/experiments/487c8935-c155-4b72-98ac-aa9c1719937b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 332ms","method":"POST","requestID":"03d70b52847d9092372795beb9a79b78","responseTime":332,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.336","http_referrer":"","http_user_agent":"node-fetch","requestID":"03d70b52847d9092372795beb9a79b78"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 331ms","method":"POST","requestID":"5da12cb3186960d621cbfc3cbaa0d487","responseTime":331,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.337","http_referrer":"","http_user_agent":"node-fetch","requestID":"5da12cb3186960d621cbfc3cbaa0d487"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OH0.dJZGtsS0_B2XJtcr8-3UbgsHt2M8GDz9eh-yKAfDE_Q","level":"info","message":"auth send jwt","requestID":"a5ae5b0185b5c4212641443e1424db0d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a5ae5b0185b5c4212641443e1424db0d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a5ae5b0185b5c4212641443e1424db0d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.301618,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:38Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2630","request_time":"1.546","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3c6a827630b8e8695bc60b59f19b0300"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2629","request_time":"1.528","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bc055d642158bd0b7309bf0363a8812a"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5ae5b0185b5c4212641443e1424db0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835458,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OH0.dJZGtsS0_B2XJtcr8-3UbgsHt2M8GDz9eh-yKAfDE_Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","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/7d2477ae-7475-4874-a60d-852b8fc6d557' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/92c91a83-beb9-4d96-a984-bb1fb2b59d4e' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"76f6e9ae-ac4e-4ac5-8d19-70906e24f1c4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.3378875} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90f7db62-62c0-46de-82c8-99381b32c017","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.3433046} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"604644ad-986a-40af-85e3-7487de32346a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.373526} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3e99d71-94e3-49cf-a9a5-d11a28c37901","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.3737323} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.373508477Z"}]},"request_id":"38319bf5-3b28-45c4-a9bb-590cdefc61e9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.3788395} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a5ae5b0185b5c4212641443e1424db0d"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.095","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5ae5b0185b5c4212641443e1424db0d"} device-1 | {"level":"info","message":"POST /devices? 201 88ms","method":"POST","requestID":"a5ae5b0185b5c4212641443e1424db0d","responseTime":88,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OH0.dJZGtsS0_B2XJtcr8-3UbgsHt2M8GDz9eh-yKAfDE_Q","level":"info","message":"auth send jwt","requestID":"095c4f8819c3ebf3be2fa1ade53191c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"095c4f8819c3ebf3be2fa1ade53191c4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.673406,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"095c4f8819c3ebf3be2fa1ade53191c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835458,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OH0.dJZGtsS0_B2XJtcr8-3UbgsHt2M8GDz9eh-yKAfDE_Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b16a1b0-64be-49d4-9a3c-21cb474de321","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.423879} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e31386a-739b-4e66-a0d1-2977aac36cf4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.4294393} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"a457e818-7b30-4d5f-92f4-f4f7e649c483","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.4723902} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b52398f9-742e-431e-b8ef-d383e3009be8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.4726799} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","responseTime":45,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"5a1b755d-c716-4293-a8c8-507e0be09bf7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835458.4768424} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"095c4f8819c3ebf3be2fa1ade53191c4"} gateway-1 | {"time_local":"28/Aug/2024:08:57:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.097","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"095c4f8819c3ebf3be2fa1ade53191c4"} device-1 | {"level":"info","message":"POST /devices? 201 92ms","method":"POST","requestID":"095c4f8819c3ebf3be2fa1ade53191c4","responseTime":92,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OX0.63ABMJQsIJZEKUnq7leUtIG5AbbNZNAsVzkM3MGCe7Q","level":"info","message":"auth send jwt","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687902,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835459,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OX0.63ABMJQsIJZEKUnq7leUtIG5AbbNZNAsVzkM3MGCe7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"1dc3798e-7a5e-4a8c-aad2-223f1c635adb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835459.0828106} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37298a25-a4bf-4c26-8aba-34b38b0555e4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835459.0885053} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"d9a08a6c-c3e1-43d5-8dde-f7aef9ba5eea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835459.2577598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6"} gateway-1 | {"time_local":"28/Aug/2024:08:57:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.192","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6"} device-1 | {"level":"info","message":"PATCH /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48 200 189ms","method":"PATCH","requestID":"d3f746bf0fb5a2046245c5aea4b0a2f6","responseTime":189,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OX0.63ABMJQsIJZEKUnq7leUtIG5AbbNZNAsVzkM3MGCe7Q","level":"info","message":"auth send jwt","requestID":"dee8d3f77456ab1f6a5736c5f235fd20"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dee8d3f77456ab1f6a5736c5f235fd20","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dee8d3f77456ab1f6a5736c5f235fd20"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93623,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"dee8d3f77456ab1f6a5736c5f235fd20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835459,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ1OX0.63ABMJQsIJZEKUnq7leUtIG5AbbNZNAsVzkM3MGCe7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dee8d3f77456ab1f6a5736c5f235fd20","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dee8d3f77456ab1f6a5736c5f235fd20"} gateway-1 | {"time_local":"28/Aug/2024:08:57:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.118","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dee8d3f77456ab1f6a5736c5f235fd20"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/websocket 200 114ms","method":"POST","requestID":"dee8d3f77456ab1f6a5736c5f235fd20","responseTime":114,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2075a3031582415f198324cc7fab79f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2075a3031582415f198324cc7fab79f9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/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":"2075a3031582415f198324cc7fab79f9"} device-1 | {"level":"info","message":"OPTIONS /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/websocket 200 0ms","method":"OPTIONS","requestID":"2075a3031582415f198324cc7fab79f9","responseTime":0,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"49564c437e678c8e9662e331dcfced1b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49564c437e678c8e9662e331dcfced1b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"49564c437e678c8e9662e331dcfced1b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.769423,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"49564c437e678c8e9662e331dcfced1b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"49564c437e678c8e9662e331dcfced1b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"49564c437e678c8e9662e331dcfced1b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.116","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"49564c437e678c8e9662e331dcfced1b"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/websocket 200 111ms","method":"POST","requestID":"49564c437e678c8e9662e331dcfced1b","responseTime":111,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"29157ff976e9125c1a680e844ef97cbd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"29157ff976e9125c1a680e844ef97cbd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29157ff976e9125c1a680e844ef97cbd"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724526,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"29157ff976e9125c1a680e844ef97cbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"29157ff976e9125c1a680e844ef97cbd","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.373508477Z"}]},"request_id":"cc5db792-059f-4e4b-b70b-252616ca7505","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.5629404} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"29157ff976e9125c1a680e844ef97cbd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29157ff976e9125c1a680e844ef97cbd"} device-1 | {"level":"info","message":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 200 12ms","method":"GET","requestID":"29157ff976e9125c1a680e844ef97cbd","responseTime":12,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 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":"29157ff976e9125c1a680e844ef97cbd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"f90f4a6b156e3aff4f074ed997f3ce85"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f90f4a6b156e3aff4f074ed997f3ce85","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f90f4a6b156e3aff4f074ed997f3ce85"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784697,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f90f4a6b156e3aff4f074ed997f3ce85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f90f4a6b156e3aff4f074ed997f3ce85","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"545b8cfd-37be-45f4-9dc0-8e9dd97beeb4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.5799205} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f90f4a6b156e3aff4f074ed997f3ce85","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f90f4a6b156e3aff4f074ed997f3ce85"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 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":"f90f4a6b156e3aff4f074ed997f3ce85"} device-1 | {"level":"info","message":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 200 13ms","method":"GET","requestID":"f90f4a6b156e3aff4f074ed997f3ce85","responseTime":13,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.687001,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2ae3deae0c0758c1fb39a12d6296ccc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to run experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to book experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully booked experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94c62270-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94c64980-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.613138,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94c62270-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94c62270-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660171,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94c64980-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94c64980-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.373508477Z"}]},"request_id":"def590db-052a-46e0-ad83-9d128a010b0f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.639475} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94c62270-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"ca2c246a-8eab-43fb-9dfd-9359b47159e1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.6404283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94c64980-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94c62270-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 200 14ms","method":"GET","requestID":"94c62270-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94c64980-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 200 14ms","method":"GET","requestID":"94c64980-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Setting up experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully set up experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully running experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94cfbf60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712176,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697805,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68d67f42-2d46-4155-b6dc-e1797eef86ce","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7011628} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.410438,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94cfbf60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94cfbf60-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.373508477Z"}]},"request_id":"0e490ef8-40cc-44c5-b5a2-a1e535f77ab6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7027984} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"f19e2e10-a31c-4ade-8fb0-f3e21c049618","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.705482} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94cfbf60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling 200 14ms","method":"POST","requestID":"94cfbf60-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d23060-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 200 22ms","method":"GET","requestID":"94cf4a30-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 200 23ms","method":"GET","requestID":"94cf7140-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48?"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf373081-6b39-466f-9f80-a0654cdc073d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7152956} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fecd803d6-e479-4a6f-aa93-bde8ad9888af#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fecd803d6-e479-4a6f-aa93-bde8ad9888af","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"982e25cb-ecbe-4cdb-b3eb-c610a8d9793c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.716045} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"262442cb-b486-4979-b5c4-14b1ac018ecf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.716553} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d341d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.742341,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94d23060-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","rebac_allow":false,"scope_allow":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":"94d23060-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d23060-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling 200 13ms","method":"POST","requestID":"94d23060-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"643eb41b-febd-45cc-a40d-8c6f4fb4ada6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.723156} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.583382,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94d341d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94d341d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc","responseTime":135,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d341d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling 200 11ms","method":"POST","requestID":"94d341d0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"ebaadd8a64be356d9e366f94a8915481"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ebaadd8a64be356d9e366f94a8915481","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94d53da0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebaadd8a64be356d9e366f94a8915481"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe97f794-6975-4a76-b38d-40f65ca0a10e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7351887} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.257097,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.86363,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94d53da0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94d53da0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ebaadd8a64be356d9e366f94a8915481","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ebaadd8a64be356d9e366f94a8915481","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94d53da0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling 200 10ms","method":"POST","requestID":"94d53da0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.373508477Z"}]},"request_id":"deefa24d-30bc-4f5c-8d93-3c79c6a2c8b0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7412884} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Building connection plan","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"97643f35-9398-4319-8e84-20d04597b2f9"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"1d706d58-4bf2-45fd-8e49-24be874c7990"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"561219a4-6427-4efd-add7-83427a32958c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} 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/7d8e2588-8a9e-4043-ad74-9217aef07f48"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ebaadd8a64be356d9e366f94a8915481","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.738454,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebaadd8a64be356d9e366f94a8915481"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 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":"ebaadd8a64be356d9e366f94a8915481"} device-1 | {"level":"info","message":"GET /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1? 200 15ms","method":"GET","requestID":"ebaadd8a64be356d9e366f94a8915481","responseTime":15,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94d76080-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE","level":"info","message":"auth send jwt","requestID":"2a151d24ad5793ebc0af82275b47caf2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2a151d24ad5793ebc0af82275b47caf2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a151d24ad5793ebc0af82275b47caf2"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b33262ea-2bcc-4687-b86b-05a74f75bfa3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7546365} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00a8de2d-615d-406a-8e14-6c792304b0af","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.7548225} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932349,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2a151d24ad5793ebc0af82275b47caf2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835460,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2MH0._4tiz2I0oGtvH--BZaeRZvdbsMMTLOQQum5ft12ioRE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a151d24ad5793ebc0af82275b47caf2","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:38.472374542Z"}]},"request_id":"233b76d4-7366-46ab-911b-e2efc6fbdadb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.76128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a151d24ad5793ebc0af82275b47caf2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76'","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76'","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} 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":"94d76080-651b-11ef-b0da-d12cff5a1914","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":"getDevicesByDeviceId succeeded","requestID":"2a151d24ad5793ebc0af82275b47caf2"} device-1 | {"level":"info","message":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 200 19ms","method":"GET","requestID":"2a151d24ad5793ebc0af82275b47caf2","responseTime":19,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48? 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":"2a151d24ad5793ebc0af82275b47caf2"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"94d76080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","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/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a2ae3deae0c0758c1fb39a12d6296ccc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94df4fc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cf7261f-b122-4bad-b6a4-702155cbe3cd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.8009431} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.374488,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94df4fc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","rebac_allow":false,"scope_allow":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":"94df4fc0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94df4fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling 200 9ms","method":"POST","requestID":"94df4fc0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94e12480-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ce16896-6064-4190-a77c-72c276f8173f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835460.8134933} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.677351,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94e12480-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","rebac_allow":false,"scope_allow":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":"94e12480-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94e12480-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling 200 14ms","method":"POST","requestID":"94e12480-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 1729600832988488597 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:woYr\r\na=ice-pwd:iAEu97QdgHLN5vIR74O/dwWh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D2:DC:54:80:6E:C9:21:C2:9E:F9:CE:50:67:33:A4:37:F5:5C:B6:0B:09:49:B9:45:ED:D2:9A:AE:74:68:2F:2A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","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/c4e543cd-0986-40b8-929e-00461f1c0ec1'"} device-1 | {"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da5ad97ac90537552c7586b0cd6351eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da5ad97ac90537552c7586b0cd6351eb","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/7d8e2588-8a9e-4043-ad74-9217aef07f48"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"}}},"level":"info","message":"received a callback","requestID":"da5ad97ac90537552c7586b0cd6351eb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"da5ad97ac90537552c7586b0cd6351eb","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"da5ad97ac90537552c7586b0cd6351eb"} device-1 | {"content":{"candidate":"candidate:3256678115 1 udp 2113937151 97657f06-e7f8-426c-b219-223203ecd963.local 40113 typ host generation 0 ufrag woYr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1177656476 1 udp 1677729535 141.24.211.56 40113 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag woYr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:356262679 1 udp 33562623 141.24.210.113 55523 typ relay raddr 141.24.211.56 rport 40113 generation 0 ufrag woYr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","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/c4e543cd-0986-40b8-929e-00461f1c0ec1'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1'"} device-1 | {"data":{"peerconnection":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","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/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e92d83b7139739da3ecaa32a752b83e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e92d83b7139739da3ecaa32a752b83e1","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/7d8e2588-8a9e-4043-ad74-9217aef07f48"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"}}},"level":"info","message":"received a callback","requestID":"e92d83b7139739da3ecaa32a752b83e1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9622cc40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:42Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29541480-f108-4e42-8045-d03c963ff16a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835462.9223757} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.839652,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9622cc40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","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":"9622cc40-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9622cc40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76 200 13ms","method":"GET","requestID":"9622cc40-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"e92d83b7139739da3ecaa32a752b83e1","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"e92d83b7139739da3ecaa32a752b83e1"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96282370-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f999236-4aef-4770-98e5-661873730f2b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835462.9573} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.0294,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"96282370-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","rebac_allow":false,"scope_allow":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":"96282370-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96282370-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling 200 26ms","method":"POST","requestID":"96282370-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"962c6930-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:42Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60e86ed2-5043-4685-8349-380052c0a152","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835462.9857893} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.424639,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"962c6930-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","rebac_allow":false,"scope_allow":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":"962c6930-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"962c6930-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling 200 15ms","method":"POST","requestID":"962c6930-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg","level":"info","message":"auth send jwt","requestID":"746d402310bf796eafd0b1110e841cb5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"746d402310bf796eafd0b1110e841cb5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","requestID":"746d402310bf796eafd0b1110e841cb5"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.14792,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"746d402310bf796eafd0b1110e841cb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835463,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"746d402310bf796eafd0b1110e841cb5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","requestID":"746d402310bf796eafd0b1110e841cb5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"746d402310bf796eafd0b1110e841cb5"} experiment-1 | {"level":"info","message":"GET /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af 200 10ms","method":"GET","requestID":"746d402310bf796eafd0b1110e841cb5","responseTime":10,"status":200,"url":"/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg","level":"info","message":"auth send jwt","requestID":"a791f5a47c560b842990e5d30c713768"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a791f5a47c560b842990e5d30c713768","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","requestID":"a791f5a47c560b842990e5d30c713768"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.750486,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a791f5a47c560b842990e5d30c713768","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835463,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a791f5a47c560b842990e5d30c713768","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Attempting to finish experiment","requestID":"a791f5a47c560b842990e5d30c713768"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9650e120-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.689554,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9650e120-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835463,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9650e120-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","device":"c4e543cd-0986-40b8-929e-00461f1c0ec1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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":"7d8e2588-8a9e-4043-ad74-9217aef07f48","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/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9d7cb996-aac9-45e7-81e1-ea0bfcea3b76': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"64e69297-2723-476d-9991-ef4adbdf3c0e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.2363102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb44b37b-f34c-40a0-b41f-efbf7ccae7df","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.2365215} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b275a73b76ef4cffa655ec14216ef2a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1b275a73b76ef4cffa655ec14216ef2a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a34a3e6605a7b212c738a429b8d28a57","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a34a3e6605a7b212c738a429b8d28a57","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"9650e120-651b-11ef-b0da-d12cff5a1914","responseTime":10,"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/7d8e2588-8a9e-4043-ad74-9217aef07f48"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"}}},"level":"info","message":"received a callback","requestID":"1b275a73b76ef4cffa655ec14216ef2a"} 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/7d8e2588-8a9e-4043-ad74-9217aef07f48"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"}}},"level":"info","message":"received a callback","requestID":"a34a3e6605a7b212c738a429b8d28a57"} device-1 | {"data":{"peerconnection":"9d7cb996-aac9-45e7-81e1-ea0bfcea3b76","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9650e120-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76 204 57ms","method":"DELETE","requestID":"9650e120-651b-11ef-b0da-d12cff5a1914","responseTime":57,"status":204,"url":"/peerconnections/9d7cb996-aac9-45e7-81e1-ea0bfcea3b76"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"},"level":"info","message":"Successfully finished experiment","requestID":"a791f5a47c560b842990e5d30c713768"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"965cc800-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d8e2588-8a9e-4043-ad74-9217aef07f48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb767a6f-b113-4895-8b3a-1c99a674c574","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.301929} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.71891,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"965cc800-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48","object_type":"device","rebac_allow":false,"scope_allow":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":"965cc800-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"965cc800-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling 200 11ms","method":"POST","requestID":"965cc800-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/7d8e2588-8a9e-4043-ad74-9217aef07f48/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"965ec3d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fecd803d6-e479-4a6f-aa93-bde8ad9888af': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fecd803d6-e479-4a6f-aa93-bde8ad9888af","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"f96fff42-cabd-461a-8e44-6da25d81000c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.3126743} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f256082d-653a-4ae9-b192-12a345998b35","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.3130329} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4e543cd-0986-40b8-929e-00461f1c0ec1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4fc9eca-cc09-4f5c-aa53-47b600e71872","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.3153064} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a791f5a47c560b842990e5d30c713768","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.443567,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"965ec3d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1","object_type":"device","rebac_allow":false,"scope_allow":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":"965ec3d0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"965ec3d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling 200 11ms","method":"POST","requestID":"965ec3d0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/c4e543cd-0986-40b8-929e-00461f1c0ec1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af","requestID":"a791f5a47c560b842990e5d30c713768"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af 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":"a791f5a47c560b842990e5d30c713768"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","request_time":"3.985","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"42501e1d27d787fb43606064307c348d"} experiment-1 | {"level":"info","message":"DELETE /experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af 204 160ms","method":"DELETE","requestID":"a791f5a47c560b842990e5d30c713768","responseTime":160,"status":204,"url":"/experiments/ecd803d6-e479-4a6f-aa93-bde8ad9888af"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg","level":"info","message":"auth send jwt","requestID":"ddf97000b31847711ce9217c8e9143ee"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b275a73b76ef4cffa655ec14216ef2a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"1b275a73b76ef4cffa655ec14216ef2a","responseTime":132,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ddf97000b31847711ce9217c8e9143ee","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"a34a3e6605a7b212c738a429b8d28a57"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"a34a3e6605a7b212c738a429b8d28a57","responseTime":131,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"ddf97000b31847711ce9217c8e9143ee"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.957746,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ddf97000b31847711ce9217c8e9143ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835463,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","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/7d8e2588-8a9e-4043-ad74-9217aef07f48' closed"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +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.846","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d11255bf3a603178da13afd045a6cb9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4592b4f7-333c-4bf6-8f8a-238cc5999224","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.397374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","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/c4e543cd-0986-40b8-929e-00461f1c0ec1' 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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0dc8963-6815-42ca-986a-44bafc1db8d1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.405} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"aa02b3ce-9677-41cf-b67b-d3ae3684d83b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.4229102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"411c9fd3-338e-401a-99e3-edab2b59204b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.4237773} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"096b2972-99e7-4fd8-917d-68a8b44cfc4c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.4284751} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ddf97000b31847711ce9217c8e9143ee"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddf97000b31847711ce9217c8e9143ee"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"ddf97000b31847711ce9217c8e9143ee","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg","level":"info","message":"auth send jwt","requestID":"2139d37f47c6720719d9d4267a197a4a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2139d37f47c6720719d9d4267a197a4a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2139d37f47c6720719d9d4267a197a4a"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.905884,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2139d37f47c6720719d9d4267a197a4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835463,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2M30.VH93x2dmgYcksAnRc3Nd_7mzq6MlGH2zykPLObhOlxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cc8a012f-a2b3-4a0c-a674-0adcaab7497f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.453652} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b283e4ad-5ff0-41f4-8ae2-7b9ff8178ffb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.45918} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"ad62b938-b396-4600-a143-f7524eba2fac","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.469817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd589282-4564-4f93-a13e-ba8e9b7d8e67","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.4700909} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.469792611Z"}]},"request_id":"5dc10aa8-a27c-4cd9-ae81-7d357991ea4c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835463.4756148} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2139d37f47c6720719d9d4267a197a4a"} gateway-1 | {"time_local":"28/Aug/2024:08:57:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2139d37f47c6720719d9d4267a197a4a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2139d37f47c6720719d9d4267a197a4a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NH0.Y9aNnMPcAxtzyFCLYdnOvMPUcW5ddwTPlioBcfch1ak","level":"info","message":"auth send jwt","requestID":"934fa769ccb0c51bc1e75ad567beaf5b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"934fa769ccb0c51bc1e75ad567beaf5b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:44Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869438,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"934fa769ccb0c51bc1e75ad567beaf5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835464,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NH0.Y9aNnMPcAxtzyFCLYdnOvMPUcW5ddwTPlioBcfch1ak"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"8d16f9e9-08f6-44f6-b791-fd35048b0371","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835464.0324233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4f47bda-c06f-4dcf-90d2-dc2e8db7293a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835464.0377593} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"f7754671-4adf-4635-adb0-da6c5ef29fc0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835464.050066} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"934fa769ccb0c51bc1e75ad567beaf5b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"934fa769ccb0c51bc1e75ad567beaf5b"} device-1 | {"level":"info","message":"PATCH /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2 200 30ms","method":"PATCH","requestID":"934fa769ccb0c51bc1e75ad567beaf5b","responseTime":30,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NH0.Y9aNnMPcAxtzyFCLYdnOvMPUcW5ddwTPlioBcfch1ak","level":"info","message":"auth send jwt","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:44Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702581,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835464,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NH0.Y9aNnMPcAxtzyFCLYdnOvMPUcW5ddwTPlioBcfch1ak"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/websocket 200 16ms","method":"POST","requestID":"6b4c7c7d1a57e0c334feff5ed8ccfa0f","responseTime":16,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41bc2b717f534eb256d0b87a2edb0939","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"41bc2b717f534eb256d0b87a2edb0939","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/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":"41bc2b717f534eb256d0b87a2edb0939"} device-1 | {"level":"info","message":"OPTIONS /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/websocket 200 1ms","method":"OPTIONS","requestID":"41bc2b717f534eb256d0b87a2edb0939","responseTime":1,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"21db04ba54888828a408fbf4ac2c9d05"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"21db04ba54888828a408fbf4ac2c9d05","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"21db04ba54888828a408fbf4ac2c9d05"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.782152,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"21db04ba54888828a408fbf4ac2c9d05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21db04ba54888828a408fbf4ac2c9d05","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"21db04ba54888828a408fbf4ac2c9d05"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/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":"21db04ba54888828a408fbf4ac2c9d05"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/websocket 200 30ms","method":"POST","requestID":"21db04ba54888828a408fbf4ac2c9d05","responseTime":30,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"52d72932acb68b4c13f860aa407b4a34"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"52d72932acb68b4c13f860aa407b4a34","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52d72932acb68b4c13f860aa407b4a34"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934313,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"52d72932acb68b4c13f860aa407b4a34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52d72932acb68b4c13f860aa407b4a34","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"a0d9b90c-cbb9-4c81-8186-a66083aa4634","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.557756} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"52d72932acb68b4c13f860aa407b4a34","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52d72932acb68b4c13f860aa407b4a34"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 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":"52d72932acb68b4c13f860aa407b4a34"} device-1 | {"level":"info","message":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 200 12ms","method":"GET","requestID":"52d72932acb68b4c13f860aa407b4a34","responseTime":12,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"514644bc59fa43933331a265a488ab56"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"514644bc59fa43933331a265a488ab56","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"514644bc59fa43933331a265a488ab56"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875731,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"514644bc59fa43933331a265a488ab56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"514644bc59fa43933331a265a488ab56","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.469792611Z"}]},"request_id":"445445e6-8689-4dc1-8925-1d60e50dbdf1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.574403} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"514644bc59fa43933331a265a488ab56","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"514644bc59fa43933331a265a488ab56"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 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":"514644bc59fa43933331a265a488ab56"} device-1 | {"level":"info","message":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 200 11ms","method":"GET","requestID":"514644bc59fa43933331a265a488ab56","responseTime":11,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"07a36312459377d1cde87948a9b382c4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"07a36312459377d1cde87948a9b382c4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"07a36312459377d1cde87948a9b382c4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.649317,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"07a36312459377d1cde87948a9b382c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"07a36312459377d1cde87948a9b382c4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to run experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to book experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully booked experiment","requestID":"07a36312459377d1cde87948a9b382c4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97bec900-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.120649,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97bec900-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97bec900-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.982469,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"e608a041-e0fb-4628-861c-1a171fab20e8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.626248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97bec900-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.469792611Z"}]},"request_id":"7b6afff8-c5b2-4e32-a113-c0f70d29f135","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.6288052} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97bec900-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 200 14ms","method":"GET","requestID":"97bec900-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 200 15ms","method":"GET","requestID":"97bf1720-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Setting up experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully set up experiment","requestID":"07a36312459377d1cde87948a9b382c4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97c75480-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97c7f0c0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully running experiment","requestID":"07a36312459377d1cde87948a9b382c4"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820502,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97c75480-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97c75480-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755679,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.615854,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b212975-2ed7-4370-ba59-a5054e8dc522","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.682733} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97c7f0c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","rebac_allow":false,"scope_allow":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":"97c7f0c0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.469792611Z"}]},"request_id":"fa9419aa-06e3-4e16-8ce9-81d4034bbc85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.684242} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"fa08e941-1719-42c7-a8c7-c39201c10a4d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.6874878} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97c7f0c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling 200 12ms","method":"POST","requestID":"97c7f0c0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"97c75480-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97ca61c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} device-1 | {"level":"info","message":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 200 22ms","method":"GET","requestID":"97c77b90-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97c75480-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 200 24ms","method":"GET","requestID":"97c75480-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8337747d-e5fc-4ea0-bafa-bf1bd39308d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.6962738} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.606247,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97cb4c20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97ca61c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","rebac_allow":false,"scope_allow":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":"97ca61c0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"44e8d45d-82a1-424e-be50-efdd58ac6d7b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.6986806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d065d85-a7a1-41b2-b8e9-d119f35cbf8a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.6989977} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"07a36312459377d1cde87948a9b382c4","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97ca61c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling 200 10ms","method":"POST","requestID":"97ca61c0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"837b0301-ec45-48f6-8bd3-4f3fc051de0b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7056866} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.008524,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97cb4c20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97cb4c20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"07a36312459377d1cde87948a9b382c4"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 127ms","method":"POST","requestID":"07a36312459377d1cde87948a9b382c4","responseTime":127,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97cb4c20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling 200 13ms","method":"POST","requestID":"97cb4c20-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97cd9610-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"dcabf7f0b50330f4ca273023f9950a70"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dcabf7f0b50330f4ca273023f9950a70","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcabf7f0b50330f4ca273023f9950a70"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57195d7a-597f-49fa-9598-5aa5641eabc0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7185657} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.388591,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848807,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97cd9610-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97cd9610-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"dcabf7f0b50330f4ca273023f9950a70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dcabf7f0b50330f4ca273023f9950a70","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.422884481Z"}]},"request_id":"2c530868-f3ca-4149-baa3-ecf66c685b8b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7248363} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97cd9610-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dcabf7f0b50330f4ca273023f9950a70","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Building connection plan","requestID":"07a36312459377d1cde87948a9b382c4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"0bdc5e06-1433-427e-951a-650705c0bf29"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"4c5d6fbd-944f-4f91-8da4-99a2fddf97c6"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"eec055db-2a21-4864-ae32-b1799807ce98"}]},"level":"info","message":"Built pairwise service configurations","requestID":"07a36312459377d1cde87948a9b382c4"} 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/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"07a36312459377d1cde87948a9b382c4"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling 200 11ms","method":"POST","requestID":"97cd9610-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcabf7f0b50330f4ca273023f9950a70"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 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":"dcabf7f0b50330f4ca273023f9950a70"} device-1 | {"level":"info","message":"GET /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2? 200 17ms","method":"GET","requestID":"dcabf7f0b50330f4ca273023f9950a70","responseTime":17,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2?"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.912619,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97d00710-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA","level":"info","message":"auth send jwt","requestID":"27e5f7d100134a97de0d31ea5f81c2bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27e5f7d100134a97de0d31ea5f81c2bb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27e5f7d100134a97de0d31ea5f81c2bb"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650055,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"27e5f7d100134a97de0d31ea5f81c2bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835465,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2NX0.925IsIWZgG9plP_JAfNzlSy17QG2QUce6wZA5iMr7TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27e5f7d100134a97de0d31ea5f81c2bb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"544c2f90-3edc-431e-8f7a-80a66417e7fa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7463634} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96a50894-c16c-4c1a-bb69-660e84a77431","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7466908} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:43.469792611Z"}]},"request_id":"99f4072a-f312-4306-bfc0-ada48c4a2b06","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.7476175} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27e5f7d100134a97de0d31ea5f81c2bb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27e5f7d100134a97de0d31ea5f81c2bb"} gateway-1 | {"time_local":"28/Aug/2024:08:57:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 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":"27e5f7d100134a97de0d31ea5f81c2bb"} device-1 | {"level":"info","message":"GET /devices/a7b8f8ee-d042-4551-aa40-4576742590b2? 200 14ms","method":"GET","requestID":"27e5f7d100134a97de0d31ea5f81c2bb","responseTime":14,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19'","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19'","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"97d00710-651b-11ef-b0da-d12cff5a1914"} 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":"97d00710-651b-11ef-b0da-d12cff5a1914","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":"97d00710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","device":"a7b8f8ee-d042-4551-aa40-4576742590b2","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/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"07a36312459377d1cde87948a9b382c4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97d9cb10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea519afd-363d-46b8-83c6-27bfaddbc0f9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.797337} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.319554,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97d9cb10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"97d9cb10-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97d9cb10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling 200 9ms","method":"POST","requestID":"97d9cb10-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97db9fd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:45Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab47c00a-0d0d-4d1d-817d-124631fc908a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835465.8142715} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.535301,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:45Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 7683168681584691044 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:+nUZ\r\na=ice-pwd:EsGENwOEHwC6qmKPGKavNW6Q\r\na=ice-options:trickle\r\na=fingerprint:sha-256 73:59:05:E7:17:AA:7C:E1:03:33:C6:15:54:EE:B9:AA:4D:71:75:9E:AF:D6:1F:A0:9E:B0:03:9D:3C:E2:CA:31\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"97db9fd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","rebac_allow":false,"scope_allow":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":"97db9fd0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97db9fd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling 200 16ms","method":"POST","requestID":"97db9fd0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling"} device-1 | {"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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/a2b2262f-7035-48bf-a81a-baa19aa67f19' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2de693f3bebea08c8e87dffa07a28c22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connecting","url":"http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"}}},"level":"info","message":"received a callback","requestID":"2de693f3bebea08c8e87dffa07a28c22"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2de693f3bebea08c8e87dffa07a28c22","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"2de693f3bebea08c8e87dffa07a28c22","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"2de693f3bebea08c8e87dffa07a28c22"} device-1 | {"content":{"candidate":"candidate:1468362905 1 udp 2113937151 b20018dc-4b01-4eb2-933a-b654e10d8811.local 47955 typ host generation 0 ufrag +nUZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3299791242 1 udp 1677729535 141.24.211.56 47955 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +nUZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2055367288 1 udp 33562623 141.24.210.113 56366 typ relay raddr 141.24.211.56 rport 47955 generation 0 ufrag +nUZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a7b8f8ee-d042-4551-aa40-4576742590b2","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/a7b8f8ee-d042-4551-aa40-4576742590b2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2'"} device-1 | {"data":{"peerconnection":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"a2b2262f-7035-48bf-a81a-baa19aa67f19","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/a2b2262f-7035-48bf-a81a-baa19aa67f19' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4af4180fb57d4624f7027c08847fb51f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4af4180fb57d4624f7027c08847fb51f","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/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"}}},"level":"info","message":"received a callback","requestID":"4af4180fb57d4624f7027c08847fb51f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"991a8870-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2b2262f-7035-48bf-a81a-baa19aa67f19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77cdaa5d-9cd9-48f3-9a9b-36648e2d96cd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835467.8999693} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.876334,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"991a8870-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","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":"991a8870-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"991a8870-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19 200 10ms","method":"GET","requestID":"991a8870-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"4af4180fb57d4624f7027c08847fb51f","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"4af4180fb57d4624f7027c08847fb51f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"991ef540-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1cfd60ad-14bb-4b58-a338-f090fbeb17da","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835467.9307745} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.796191,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"991ef540-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","rebac_allow":false,"scope_allow":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":"991ef540-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"991ef540-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling 200 15ms","method":"POST","requestID":"991ef540-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99213f30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58c4bab6-f7b4-495b-8413-676cd72b9cd9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835467.9473946} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.646409,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99213f30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99213f30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99213f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling 200 14ms","method":"POST","requestID":"99213f30-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"8adc655a67168495b0d7e750ab8f6874"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8adc655a67168495b0d7e750ab8f6874","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","requestID":"8adc655a67168495b0d7e750ab8f6874"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.734837,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8adc655a67168495b0d7e750ab8f6874","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8adc655a67168495b0d7e750ab8f6874","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","requestID":"8adc655a67168495b0d7e750ab8f6874"} experiment-1 | {"level":"info","message":"GET /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b 200 11ms","method":"GET","requestID":"8adc655a67168495b0d7e750ab8f6874","responseTime":11,"status":200,"url":"/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8adc655a67168495b0d7e750ab8f6874"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"60b0baf23ca1e3d2939aa8592ba73a80","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.764938,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"60b0baf23ca1e3d2939aa8592ba73a80","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60b0baf23ca1e3d2939aa8592ba73a80","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Attempting to finish experiment","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"993feac0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.836956,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"993feac0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"993feac0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19","device":"a7b8f8ee-d042-4551-aa40-4576742590b2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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":"2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","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/a2b2262f-7035-48bf-a81a-baa19aa67f19' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71d0c3a2736569b5bb031716ee919fc0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"71d0c3a2736569b5bb031716ee919fc0","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":"closed","url":"http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"}}},"level":"info","message":"received a callback","requestID":"71d0c3a2736569b5bb031716ee919fc0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e5fce04a566290931f0772cfe96feca3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2b2262f-7035-48bf-a81a-baa19aa67f19': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa2b2262f-7035-48bf-a81a-baa19aa67f19","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"5d722946-f2db-4665-9080-5b49f34baf5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.1590822} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e5fce04a566290931f0772cfe96feca3","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af820eb4-2607-4072-beda-1eb639b056a1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.1593113} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"}}},"level":"info","message":"received a callback","requestID":"e5fce04a566290931f0772cfe96feca3"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"993feac0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a2b2262f-7035-48bf-a81a-baa19aa67f19","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"993feac0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19 204 36ms","method":"DELETE","requestID":"993feac0-651b-11ef-b0da-d12cff5a1914","responseTime":36,"status":204,"url":"/peerconnections/a2b2262f-7035-48bf-a81a-baa19aa67f19"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"},"level":"info","message":"Successfully finished experiment","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9947da00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"267e8ca7-23e4-4fd0-9bfd-a63f193055d0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.196396} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.187236,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9947da00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9947da00-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9947da00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling 200 8ms","method":"POST","requestID":"9947da00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"994987b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"326a9be5-d3f6-4ec5-a499-b68eacaec57c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.2032073} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba3c3be2-d872-4f1b-8efe-581778c24768","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.2033868} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"60b0baf23ca1e3d2939aa8592ba73a80","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b8f8ee-d042-4551-aa40-4576742590b2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb660393-63a8-47a9-9b41-3370daf3dacf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.209118} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.558562,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"994987b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b8f8ee-d042-4551-aa40-4576742590b2","object_type":"device","rebac_allow":false,"scope_allow":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":"994987b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"994987b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling 200 10ms","method":"POST","requestID":"994987b0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/a7b8f8ee-d042-4551-aa40-4576742590b2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60b0baf23ca1e3d2939aa8592ba73a80"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +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.184","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6d89cc27a0ea393ee52492b0d6f58686"} experiment-1 | {"level":"info","message":"DELETE /experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b 204 131ms","method":"DELETE","requestID":"60b0baf23ca1e3d2939aa8592ba73a80","responseTime":131,"status":204,"url":"/experiments/2f3b4e5e-42df-4b40-9a62-c7ad5b9e3d6b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"71d0c3a2736569b5bb031716ee919fc0","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"71d0c3a2736569b5bb031716ee919fc0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"e5fce04a566290931f0772cfe96feca3","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"e5fce04a566290931f0772cfe96feca3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"85777c729606caa67a3c1f5b93c13494"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"85777c729606caa67a3c1f5b93c13494","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +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.734","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2fb08b357229a490448dabdcd010d896"} device-1 | {"level":"info","message":"postDevices called","requestID":"85777c729606caa67a3c1f5b93c13494"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2ae0e6e7-9dc2-4578-9fa8-9f56ae2ba7c2' closed"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.792711,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"85777c729606caa67a3c1f5b93c13494","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","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/a7b8f8ee-d042-4551-aa40-4576742590b2' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3f15a3cf-6d6b-45ce-b3e4-e8de18055ea4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.2948568} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abab8ca8-465e-40cb-bfd6-bae07c8dc00f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.2995372} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"91bc72ef-88c7-4afb-894c-e5918c2220a2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.3142383} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3468a0e3-1f92-4861-ba29-d997b234a8da","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.3144023} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"51d4712b-a8be-4491-80e0-541b85814178","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.3187435} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"85777c729606caa67a3c1f5b93c13494"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"85777c729606caa67a3c1f5b93c13494"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"85777c729606caa67a3c1f5b93c13494","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"d9c225c04a5db1e2b2a6821ee04b4180"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d9c225c04a5db1e2b2a6821ee04b4180"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.844267,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d9c225c04a5db1e2b2a6821ee04b4180","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"faddd136-5cc0-410f-b84c-cc258c9a559f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.3441982} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef603250-5c3b-4d60-b541-1b7b36af1226","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.349453} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5eb97ee4-70e4-436f-a3e5-50121d72959e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.363172} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e112ece7-c3da-4a21-9931-a927b9fcaa0b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.3657324} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"8dc31502-d35e-4542-a94a-0e39653ad1f9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.372817} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d9c225c04a5db1e2b2a6821ee04b4180"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"d9c225c04a5db1e2b2a6821ee04b4180","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9c225c04a5db1e2b2a6821ee04b4180"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"eec55bd44897414fb699351e5a4d358f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eec55bd44897414fb699351e5a4d358f","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"e9994b8df58735c98004176b3eb8b4f1"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"eec55bd44897414fb699351e5a4d358f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9994b8df58735c98004176b3eb8b4f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e9994b8df58735c98004176b3eb8b4f1"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.456835,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"eec55bd44897414fb699351e5a4d358f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eec55bd44897414fb699351e5a4d358f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094969,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e9994b8df58735c98004176b3eb8b4f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e9994b8df58735c98004176b3eb8b4f1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"2a45564a-e543-4e2c-8778-694b52a0ceb6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.9227407} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eec55bd44897414fb699351e5a4d358f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"2537cfef-f89b-40ce-baad-d0e55452e7bb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.923571} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e9994b8df58735c98004176b3eb8b4f1","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9e5a8a7-2ff5-4856-862f-96282189e11d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.928405} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eec55bd44897414fb699351e5a4d358f","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10fdd3f8-2ee7-45c2-9ab1-f8b991d2b474","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.9302502} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e9994b8df58735c98004176b3eb8b4f1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"f4ce6c45-10b1-4a55-82ef-92604a6641ab","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.9336932} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e9994b8df58735c98004176b3eb8b4f1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e9994b8df58735c98004176b3eb8b4f1"} device-1 | {"level":"info","message":"PATCH /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459 200 22ms","method":"PATCH","requestID":"e9994b8df58735c98004176b3eb8b4f1","responseTime":22,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e9994b8df58735c98004176b3eb8b4f1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"fb1432c284d765f52c1a35a2f7425086"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fb1432c284d765f52c1a35a2f7425086","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fb1432c284d765f52c1a35a2f7425086"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61858,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fb1432c284d765f52c1a35a2f7425086","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb1432c284d765f52c1a35a2f7425086","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"d1735372-8bbc-45bd-9762-4eff2a2a8d85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835468.9462383} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eec55bd44897414fb699351e5a4d358f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"eec55bd44897414fb699351e5a4d358f"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/25d77d59-3326-469b-94c7-232c3b9322eb HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"eec55bd44897414fb699351e5a4d358f"} device-1 | {"level":"info","message":"PATCH /devices/25d77d59-3326-469b-94c7-232c3b9322eb 200 39ms","method":"PATCH","requestID":"eec55bd44897414fb699351e5a4d358f","responseTime":39,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg","level":"info","message":"auth send jwt","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665385,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cd1b3be09cbe704fad9a35fe3933e5d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835468,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OH0.XXG3Di0FtDVhX8DJfgkvjPMGNd95DEwIsVEZB-vQyLg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fb1432c284d765f52c1a35a2f7425086"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fb1432c284d765f52c1a35a2f7425086"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/websocket 200 22ms","method":"POST","requestID":"fb1432c284d765f52c1a35a2f7425086","responseTime":22,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/websocket 200 17ms","method":"POST","requestID":"cd1b3be09cbe704fad9a35fe3933e5d2","responseTime":17,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU","level":"info","message":"auth send jwt","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82107,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b4a9fa7ed2e93c3a975ee10461a3c417","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"2b588707-5d1f-4ffd-88aa-2439d5e38b8d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.0088952} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417"} gateway-1 | {"time_local":"28/Aug/2024:08:57:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 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":"b4a9fa7ed2e93c3a975ee10461a3c417"} device-1 | {"level":"info","message":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 200 11ms","method":"GET","requestID":"b4a9fa7ed2e93c3a975ee10461a3c417","responseTime":11,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU","level":"info","message":"auth send jwt","requestID":"1c69dc829dc7f4b13f2cff73efbca17a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1c69dc829dc7f4b13f2cff73efbca17a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c69dc829dc7f4b13f2cff73efbca17a"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68202,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1c69dc829dc7f4b13f2cff73efbca17a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1c69dc829dc7f4b13f2cff73efbca17a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"c222ca9f-03b5-44bd-8716-c5de5ae636fa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.0251853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c69dc829dc7f4b13f2cff73efbca17a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c69dc829dc7f4b13f2cff73efbca17a"} gateway-1 | {"time_local":"28/Aug/2024:08:57:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 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":"1c69dc829dc7f4b13f2cff73efbca17a"} device-1 | {"level":"info","message":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 200 12ms","method":"GET","requestID":"1c69dc829dc7f4b13f2cff73efbca17a","responseTime":12,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU","level":"info","message":"auth send jwt","requestID":"53b8aaf0556336b3287f3846545624bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53b8aaf0556336b3287f3846545624bb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"53b8aaf0556336b3287f3846545624bb"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.729748,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"53b8aaf0556336b3287f3846545624bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53b8aaf0556336b3287f3846545624bb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to run experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to book experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully booked experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612525,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.563043,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"555066f8-ebea-421a-a067-cfebde37c013","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.0794642} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"056cdee2-f589-4fac-b32e-42e54261e143","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.0804849} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 200 15ms","method":"GET","requestID":"99cdd2e0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 200 14ms","method":"GET","requestID":"99ce2100-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Setting up experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully set up experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99d83320-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99d88140-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully running experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651246,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.867366,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99d83320-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99d83320-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fd8224d-182f-44c2-a260-963294cbe5a9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1461198} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.693938,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99d88140-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","rebac_allow":false,"scope_allow":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":"99d88140-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"3a6e797b-c439-43b3-8303-ab9826fcc653","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1488955} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"99d83320-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"7fea84af-5bd4-45ca-aef6-d212dce2cf9d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1517348} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99d88140-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling 200 14ms","method":"POST","requestID":"99d88140-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4da00323-943d-47ca-9a2e-027fd7595b3d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4da00323-943d-47ca-9a2e-027fd7595b3d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e67c133f-fd38-4f1a-9fd2-88a234e33bd1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1572413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1452d74-8fb0-4880-a6dd-ca5cec876fd6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.157496} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99db4060-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"53b8aaf0556336b3287f3846545624bb","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99d83320-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} device-1 | {"level":"info","message":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 200 24ms","method":"GET","requestID":"99d83320-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 200 26ms","method":"GET","requestID":"99d80c10-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82727553-86d3-43b8-9778-abb78dd40cd1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1634464} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.882946,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99db4060-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","rebac_allow":false,"scope_allow":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":"99db4060-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99db4060-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling 200 10ms","method":"POST","requestID":"99db4060-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99dcee10-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"53b8aaf0556336b3287f3846545624bb"} gateway-1 | {"time_local":"28/Aug/2024:08:57:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"53b8aaf0556336b3287f3846545624bb","responseTime":137,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54648fa6-def5-47da-b621-18a9d1bd1a79","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1741757} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.088249,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99dcee10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","rebac_allow":false,"scope_allow":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":"99dcee10-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU","level":"info","message":"auth send jwt","requestID":"acbb72fc7d5b7f295678a583af4b7bc6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acbb72fc7d5b7f295678a583af4b7bc6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acbb72fc7d5b7f295678a583af4b7bc6"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829991,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99dcee10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"acbb72fc7d5b7f295678a583af4b7bc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling 200 13ms","method":"POST","requestID":"99dcee10-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"acbb72fc7d5b7f295678a583af4b7bc6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99df5f10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.314206653Z"}]},"request_id":"6ee7d522-b552-4c68-a8fe-f7eef2f025a5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1863117} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acbb72fc7d5b7f295678a583af4b7bc6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acbb72fc7d5b7f295678a583af4b7bc6"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0462eeb5-8ff6-48e5-9425-94bdbe25bd58","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.1908038} gateway-1 | {"time_local":"28/Aug/2024:08:57:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 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":"acbb72fc7d5b7f295678a583af4b7bc6"} device-1 | {"level":"info","message":"GET /devices/25d77d59-3326-469b-94c7-232c3b9322eb? 200 14ms","method":"GET","requestID":"acbb72fc7d5b7f295678a583af4b7bc6","responseTime":14,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb?"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.305406,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99df5f10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","rebac_allow":false,"scope_allow":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":"99df5f10-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU","level":"info","message":"auth send jwt","requestID":"871d25b22ee7d15ec0b188416991cf43"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"871d25b22ee7d15ec0b188416991cf43","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99df5f10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling 200 13ms","method":"POST","requestID":"99df5f10-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"871d25b22ee7d15ec0b188416991cf43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Building connection plan","requestID":"53b8aaf0556336b3287f3846545624bb"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"aadc0966-cc21-4700-96dc-8a8f6950dc07"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"96e605e7-8307-4f2f-9499-14e5a294cf5c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"85f1b102-b450-46d5-b645-463af871c277"}]},"level":"info","message":"Built pairwise service configurations","requestID":"53b8aaf0556336b3287f3846545624bb"} 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/7cebd8c5-de71-44ca-ba99-ae7b06690459"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"53b8aaf0556336b3287f3846545624bb"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.775788,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"871d25b22ee7d15ec0b188416991cf43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"871d25b22ee7d15ec0b188416991cf43","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.932515,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835469,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ2OX0.nybsQlFmH8y1bMhSjc-Or-KcGTo2sM_DJGp3e0SWgkU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:48.365674829Z"}]},"request_id":"67bd9756-0b3e-4c35-9874-fc8afa9cd4b4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.205838} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"871d25b22ee7d15ec0b188416991cf43","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"871d25b22ee7d15ec0b188416991cf43"} gateway-1 | {"time_local":"28/Aug/2024:08:57:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 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":"871d25b22ee7d15ec0b188416991cf43"} device-1 | {"level":"info","message":"GET /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459? 200 13ms","method":"GET","requestID":"871d25b22ee7d15ec0b188416991cf43","responseTime":13,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2d90adab-e5bc-4d06-9d18-fba38d706062","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.2155554} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1e3ba42-14f6-4f9a-acde-2e49c9657e60","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.2159734} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362'","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362'","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} 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":"99e1d010-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"99e1d010-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"53b8aaf0556336b3287f3846545624bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99ea0d70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16956598-9341-4f0d-b959-541b958c9e1c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.260649} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.478935,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99ea0d70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99ea0d70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99ea0d70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling 200 10ms","method":"POST","requestID":"99ea0d70-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99ebe230-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b43533f7-dac1-4f84-961f-673c84302c73","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835469.2719927} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.179156,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"99ebe230-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","rebac_allow":false,"scope_allow":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":"99ebe230-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99ebe230-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling 200 9ms","method":"POST","requestID":"99ebe230-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling"} device-1 | {"device":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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/b8818642-52e4-46d7-b258-dc48c91ec362' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d200cb300f26719c8d6bf93708fb60a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d200cb300f26719c8d6bf93708fb60a2","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/7cebd8c5-de71-44ca-ba99-ae7b06690459"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"}}},"level":"info","message":"received a callback","requestID":"d200cb300f26719c8d6bf93708fb60a2"} device-1 | {"device":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"d200cb300f26719c8d6bf93708fb60a2","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"d200cb300f26719c8d6bf93708fb60a2"} device-1 | {"device":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"b8818642-52e4-46d7-b258-dc48c91ec362","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/b8818642-52e4-46d7-b258-dc48c91ec362' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1fb7bc29b078db2e71734fda7ed9253a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"1fb7bc29b078db2e71734fda7ed9253a","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/7cebd8c5-de71-44ca-ba99-ae7b06690459"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"}}},"level":"info","message":"received a callback","requestID":"1fb7bc29b078db2e71734fda7ed9253a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9b2b6710-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8818642-52e4-46d7-b258-dc48c91ec362","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5edfd720-e04c-40b6-82a4-4dbdc70299cd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.3668177} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.891839,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b2b6710-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362","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":"9b2b6710-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9b2b6710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362 200 12ms","method":"GET","requestID":"9b2b6710-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"1fb7bc29b078db2e71734fda7ed9253a","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"1fb7bc29b078db2e71734fda7ed9253a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b304910-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb04d924-4786-4766-a08e-366e5941b8f9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.3996034} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.614594,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b304910-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","rebac_allow":false,"scope_allow":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":"9b304910-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b304910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling 200 12ms","method":"POST","requestID":"9b304910-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b326bf0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b4e0058-f2a5-498c-9067-0bf90e57f411","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.4125392} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.950811,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b326bf0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b326bf0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b326bf0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling 200 10ms","method":"POST","requestID":"9b326bf0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0","level":"info","message":"auth send jwt","requestID":"a748ab8b648e42b970f8fed79370a5b2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a748ab8b648e42b970f8fed79370a5b2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","requestID":"a748ab8b648e42b970f8fed79370a5b2"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.953118,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a748ab8b648e42b970f8fed79370a5b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835471,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a748ab8b648e42b970f8fed79370a5b2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","requestID":"a748ab8b648e42b970f8fed79370a5b2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a748ab8b648e42b970f8fed79370a5b2"} experiment-1 | {"level":"info","message":"GET /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d 200 14ms","method":"GET","requestID":"a748ab8b648e42b970f8fed79370a5b2","responseTime":14,"status":200,"url":"/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0","level":"info","message":"auth send jwt","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702509,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"4acd1dffa5a5e04c6d326bfaa53404c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835471,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Attempting to finish experiment","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.718289,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835471,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"25d77d59-3326-469b-94c7-232c3b9322eb","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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":"7cebd8c5-de71-44ca-ba99-ae7b06690459","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/b8818642-52e4-46d7-b258-dc48c91ec362' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b8818642-52e4-46d7-b258-dc48c91ec362","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8818642-52e4-46d7-b258-dc48c91ec362': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb8818642-52e4-46d7-b258-dc48c91ec362","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"290a6c5e-ab70-4bae-807c-aaf423d9560d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.5995288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45d99151-60e7-42a3-a4e0-e1a002c3689d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.599863} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dcd6fdd4dc008a052e327ce8255e89bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dcd6fdd4dc008a052e327ce8255e89bc","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/7cebd8c5-de71-44ca-ba99-ae7b06690459"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"}}},"level":"info","message":"received a callback","requestID":"dcd6fdd4dc008a052e327ce8255e89bc"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91b0f593992eb0cd4d8a8e9b5e85688c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"91b0f593992eb0cd4d8a8e9b5e85688c","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/7cebd8c5-de71-44ca-ba99-ae7b06690459"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"}}},"level":"info","message":"received a callback","requestID":"91b0f593992eb0cd4d8a8e9b5e85688c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362 204 45ms","method":"DELETE","requestID":"9b4d1fe0-651b-11ef-b0da-d12cff5a1914","responseTime":45,"status":204,"url":"/peerconnections/b8818642-52e4-46d7-b258-dc48c91ec362"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"},"level":"info","message":"Successfully finished experiment","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b566eb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7cebd8c5-de71-44ca-ba99-ae7b06690459","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d6d89c7-6692-4c20-b2ff-bb45401aea86","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.6487541} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.337168,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b566eb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b566eb0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b566eb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling 200 10ms","method":"POST","requestID":"9b566eb0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/7cebd8c5-de71-44ca-ba99-ae7b06690459/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b586a80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4da00323-943d-47ca-9a2e-027fd7595b3d': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4da00323-943d-47ca-9a2e-027fd7595b3d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"40598856-588f-48d9-85dc-695a51426b2e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.6563191} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1773a464-204c-472f-9b39-e6f726e1c2d2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.65664} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25d77d59-3326-469b-94c7-232c3b9322eb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4878de32-4f43-42f9-8872-7787e8a5861b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.6611273} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.492811,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b586a80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb","object_type":"device","rebac_allow":false,"scope_allow":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":"9b586a80-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b586a80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling 200 9ms","method":"POST","requestID":"9b586a80-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/25d77d59-3326-469b-94c7-232c3b9322eb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +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.756","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b1c9637de3486aa33007588dcadeb0ea"} experiment-1 | {"level":"info","message":"DELETE /experiments/4da00323-943d-47ca-9a2e-027fd7595b3d 204 150ms","method":"DELETE","requestID":"4acd1dffa5a5e04c6d326bfaa53404c2","responseTime":150,"status":204,"url":"/experiments/4da00323-943d-47ca-9a2e-027fd7595b3d"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +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.745","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"682c309810abc54de82658a46991f8bb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"dcd6fdd4dc008a052e327ce8255e89bc","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"dcd6fdd4dc008a052e327ce8255e89bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"91b0f593992eb0cd4d8a8e9b5e85688c","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"91b0f593992eb0cd4d8a8e9b5e85688c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0","level":"info","message":"auth send jwt","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/25d77d59-3326-469b-94c7-232c3b9322eb' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.851585,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835471,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","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/7cebd8c5-de71-44ca-ba99-ae7b06690459' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f7b40ec8-2716-40e2-8b9a-7fed10f5c49a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.749791} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bef0419a-0a46-46d7-a335-a09db14031ed","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.7558904} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"f5a3a2c6-07d8-491b-93ae-87550167a3fe","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.7672305} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b78755b-bb28-42c3-852e-7b58ef8568a3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.7674954} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.767210995Z"}]},"request_id":"05e43bdd-affb-48c4-8605-30d17f356236","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.7724433} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bd7e9e2afcbd5bb9bcf1e5e98834bf0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0","level":"info","message":"auth send jwt","requestID":"e562ccbce607e83816a5213e230e81b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e562ccbce607e83816a5213e230e81b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e562ccbce607e83816a5213e230e81b1"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.725697,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e562ccbce607e83816a5213e230e81b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835471,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3MX0.zEdmMY9o5oGysXt0JA-fsrzdQNvLD3B8If9YSxRlGi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1d611086-4854-4823-8164-d9b001bd3467","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.8019576} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78adb8db-685c-4c20-944f-35e5abedf697","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.806937} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"c7e1759f-1696-4857-9ac7-0d095a15bd3f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.8179345} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d7fbab1-9a2a-4714-b32e-2a4bb7cb94e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.8181896} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.817907709Z"}]},"request_id":"863c6509-382c-47da-9538-24dceedbd62f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835471.8227022} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e562ccbce607e83816a5213e230e81b1"} gateway-1 | {"time_local":"28/Aug/2024:08:57:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e562ccbce607e83816a5213e230e81b1"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"e562ccbce607e83816a5213e230e81b1","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9bbdc06cf5a74b74a02bde0508517695","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9bbdc06cf5a74b74a02bde0508517695","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5c1c4d4b-184b-447d-b756-071c894cce42/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":"9bbdc06cf5a74b74a02bde0508517695"} device-1 | {"level":"info","message":"OPTIONS /devices/5c1c4d4b-184b-447d-b756-071c894cce42/websocket 200 0ms","method":"OPTIONS","requestID":"9bbdc06cf5a74b74a02bde0508517695","responseTime":0,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"739b3561d71bf1f9fa8564fd33ad1ac2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"739b3561d71bf1f9fa8564fd33ad1ac2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a0253cf7-e541-469e-a5bc-e7f586143519/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":"739b3561d71bf1f9fa8564fd33ad1ac2"} device-1 | {"level":"info","message":"OPTIONS /devices/a0253cf7-e541-469e-a5bc-e7f586143519/websocket 200 1ms","method":"OPTIONS","requestID":"739b3561d71bf1f9fa8564fd33ad1ac2","responseTime":1,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw","level":"info","message":"auth send jwt","requestID":"583732e08a0a6df31634169bc63cde4b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"583732e08a0a6df31634169bc63cde4b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"583732e08a0a6df31634169bc63cde4b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw","level":"info","message":"auth send jwt","requestID":"67d0625e5a35698938fdb6e5a522804e"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"67d0625e5a35698938fdb6e5a522804e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802002,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"67d0625e5a35698938fdb6e5a522804e"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"583732e08a0a6df31634169bc63cde4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"583732e08a0a6df31634169bc63cde4b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779251,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"67d0625e5a35698938fdb6e5a522804e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"67d0625e5a35698938fdb6e5a522804e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"583732e08a0a6df31634169bc63cde4b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"583732e08a0a6df31634169bc63cde4b"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/websocket 200 27ms","method":"POST","requestID":"583732e08a0a6df31634169bc63cde4b","responseTime":27,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"67d0625e5a35698938fdb6e5a522804e"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"67d0625e5a35698938fdb6e5a522804e"} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/websocket 200 32ms","method":"POST","requestID":"67d0625e5a35698938fdb6e5a522804e","responseTime":32,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw","level":"info","message":"auth send jwt","requestID":"542588fe37362e8b770bee332c82294e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"542588fe37362e8b770bee332c82294e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"542588fe37362e8b770bee332c82294e"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81433,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"542588fe37362e8b770bee332c82294e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"542588fe37362e8b770bee332c82294e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.767210995Z"}]},"request_id":"8392584b-cc29-4df5-a906-df7ba034ac58","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835473.8923757} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"542588fe37362e8b770bee332c82294e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"542588fe37362e8b770bee332c82294e"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 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":"542588fe37362e8b770bee332c82294e"} device-1 | {"level":"info","message":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 200 11ms","method":"GET","requestID":"542588fe37362e8b770bee332c82294e","responseTime":11,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw","level":"info","message":"auth send jwt","requestID":"e086a27c6a95fb8c395de29cf53de6e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e086a27c6a95fb8c395de29cf53de6e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e086a27c6a95fb8c395de29cf53de6e7"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.566861,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e086a27c6a95fb8c395de29cf53de6e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e086a27c6a95fb8c395de29cf53de6e7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.817907709Z"}]},"request_id":"b61dbd12-e246-4583-9ea3-eafd964b7ca5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835473.9095726} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e086a27c6a95fb8c395de29cf53de6e7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e086a27c6a95fb8c395de29cf53de6e7"} gateway-1 | {"time_local":"28/Aug/2024:08:57:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 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":"e086a27c6a95fb8c395de29cf53de6e7"} device-1 | {"level":"info","message":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 200 12ms","method":"GET","requestID":"e086a27c6a95fb8c395de29cf53de6e7","responseTime":12,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw","level":"info","message":"auth send jwt","requestID":"15ede236a41a2d0fe653a05db0915c30"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"15ede236a41a2d0fe653a05db0915c30","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"15ede236a41a2d0fe653a05db0915c30"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.724699,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"15ede236a41a2d0fe653a05db0915c30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"15ede236a41a2d0fe653a05db0915c30","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to run experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to book experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully booked experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879717,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821646,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.767210995Z"}]},"request_id":"308f067f-c48d-49bf-bdf4-957915e57584","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835473.9697988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.817907709Z"}]},"request_id":"72ce8ec0-210e-4055-947f-319edb6ad292","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835473.9706073} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 200 12ms","method":"GET","requestID":"9cb848a0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 200 12ms","method":"GET","requestID":"9cb86fb0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Setting up experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully set up experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952934,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully running experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cc39340-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800423,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.559978,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92ea71ec-6205-42a4-9648-be48137ed68a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0417745} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc39340-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","rebac_allow":false,"scope_allow":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":"9cc39340-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.817907709Z"}]},"request_id":"214d4e6f-a098-4f94-9db0-d1d928d8bef1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.043197} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cc39340-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.767210995Z"}]},"request_id":"d2a9a8e5-2558-4eec-9442-35e950be7deb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0463943} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling 200 11ms","method":"POST","requestID":"9cc39340-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cc5dd30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1d220f2b-afb4-4242-8332-db2bdc6a997c#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1d220f2b-afb4-4242-8332-db2bdc6a997c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"fd401672-d491-4511-9c39-04c6bcc316ba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0530872} device-1 | {"level":"info","message":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 200 22ms","method":"GET","requestID":"9cc2f700-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d394847-99dc-4a0b-b86f-ca2d9a0310e1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.053238} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 200 24ms","method":"GET","requestID":"9cc2cff0-651b-11ef-b0da-d12cff5a1914","responseTime":24,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"15ede236a41a2d0fe653a05db0915c30","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92210111-f0d3-4569-a137-6ef62250ed52","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0562963} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.089106,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc5dd30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","rebac_allow":false,"scope_allow":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":"9cc5dd30-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cc6eea0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cc5dd30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling 200 12ms","method":"POST","requestID":"9cc5dd30-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd1376a5-8aba-42e3-8a9c-874f0f2f4742","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0650342} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.938407,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc6eea0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","rebac_allow":false,"scope_allow":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":"9cc6eea0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"15ede236a41a2d0fe653a05db0915c30"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"15ede236a41a2d0fe653a05db0915c30","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cc6eea0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling 200 12ms","method":"POST","requestID":"9cc6eea0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cc91180-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"9e6801dfa8d2829cc29855206e965a02"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9e6801dfa8d2829cc29855206e965a02","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e6801dfa8d2829cc29855206e965a02"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a56541ed-8e4c-4cba-9e35-46a7ec426248","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0766218} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.749939,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e6801dfa8d2829cc29855206e965a02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e6801dfa8d2829cc29855206e965a02","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.524977,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cc91180-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","rebac_allow":false,"scope_allow":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":"9cc91180-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.767210995Z"}]},"request_id":"2df973b7-1fc8-439d-91d1-b69fff6acde6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.0818555} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cc91180-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling 200 11ms","method":"POST","requestID":"9cc91180-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e6801dfa8d2829cc29855206e965a02","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Building connection plan","requestID":"15ede236a41a2d0fe653a05db0915c30"} 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":"a97fc338-eedc-4cc2-859e-d55f08f57c9a"},{"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":"97bee0b6-9ee8-4f0e-b37f-037e349729f1"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"933c7001-936b-4184-bf5b-d38204cd867f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"15ede236a41a2d0fe653a05db0915c30"} 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/a0253cf7-e541-469e-a5bc-e7f586143519"},{"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/5c1c4d4b-184b-447d-b756-071c894cce42"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"15ede236a41a2d0fe653a05db0915c30"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e6801dfa8d2829cc29855206e965a02"} device-1 | {"level":"info","message":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 200 14ms","method":"GET","requestID":"9e6801dfa8d2829cc29855206e965a02","responseTime":14,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0253cf7-e541-469e-a5bc-e7f586143519? 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":"9e6801dfa8d2829cc29855206e965a02"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.01212,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835473,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3M30.NrCFEIf_00sAtaMfgb0DPtRkQOkOnWEUbnx6TyjcwKw"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.682853,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c24fbd24e79d3a26146b3f1f72ff8a27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:51.817907709Z"}]},"request_id":"08f56670-df1f-4a33-bd55-be8fb85364d7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.103164} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"a1ae62ed-afc8-4bd9-814e-a1fcd76a6608","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.1080666} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eae67cde-1eff-47d6-90c0-66be04f4c82c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.1083705} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 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":"c24fbd24e79d3a26146b3f1f72ff8a27"} device-1 | {"level":"info","message":"GET /devices/5c1c4d4b-184b-447d-b756-071c894cce42? 200 15ms","method":"GET","requestID":"c24fbd24e79d3a26146b3f1f72ff8a27","responseTime":15,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0'","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0'","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} 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":"9ccb8280-651b-11ef-b0da-d12cff5a1914","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":"9ccb8280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","device":"a0253cf7-e541-469e-a5bc-e7f586143519","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/b694e88b-3726-4647-9ee2-c6460dd199f0","device":"5c1c4d4b-184b-447d-b756-071c894cce42","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/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"15ede236a41a2d0fe653a05db0915c30"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cd5bbb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63f24494-d0a8-4735-96fa-3484ab038b82","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.1611738} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.624837,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cd5bbb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","rebac_allow":false,"scope_allow":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":"9cd5bbb0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cd5bbb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling 200 10ms","method":"POST","requestID":"9cd5bbb0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cd79070-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"791e26a5-ed80-4312-bfc6-328b7fe5e1f0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.172154} device-1 | {"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.551428,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cd79070-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","rebac_allow":false,"scope_allow":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":"9cd79070-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cd79070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling 200 13ms","method":"POST","requestID":"9cd79070-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling"} device-1 | {"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1872117746986505351 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:yOX0\r\na=ice-pwd:JOHcJq2Uqy5GHB0LubJNEzgi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 85:74:63:AB:D9:6C:24:98:CE:17:3A:4C:E1:44:AC:AD:54:20:F1:FD:E8:77:15:67:34:97:45:25:51:CA:42:A4\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7610583617298364712 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:tKZr\r\na=ice-pwd:zOx0p7dzPnTR6VkrVCEnBYoo\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4D:83:82:1A:E0:1F:4C:C7:71:CF:FD:64:9C:DA:F2:83:07:03:1A:3E:3A:B4:DF:F4:A5:AB:A2:1D:C0:21:02:BD\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3407369993 1 udp 2113937151 637268d5-30da-46e6-950e-40e0fe46a3d2.local 58601 typ host generation 0 ufrag tKZr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1479800346 1 udp 1677729535 141.24.211.56 58601 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tKZr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a0253cf7-e541-469e-a5bc-e7f586143519","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/a0253cf7-e541-469e-a5bc-e7f586143519'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519'"} device-1 | {"content":{"candidate":"candidate:441173809 1 udp 2113937151 74463921-c2b9-4144-9422-1ca11dc7deef.local 49160 typ host generation 0 ufrag yOX0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2304796194 1 udp 1677729535 141.24.211.56 49160 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag yOX0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a0253cf7-e541-469e-a5bc-e7f586143519","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/5c1c4d4b-184b-447d-b756-071c894cce42'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} 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/a0253cf7-e541-469e-a5bc-e7f586143519"},{"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/5c1c4d4b-184b-447d-b756-071c894cce42"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"}}},"level":"info","message":"received a callback","requestID":"fd333a0c230059eb07a022df7c4f116e"} device-1 | {"device":"5c1c4d4b-184b-447d-b756-071c894cce42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd333a0c230059eb07a022df7c4f116e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fd333a0c230059eb07a022df7c4f116e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"fd333a0c230059eb07a022df7c4f116e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"fd333a0c230059eb07a022df7c4f116e","responseTime":9,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","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/b694e88b-3726-4647-9ee2-c6460dd199f0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28660cc44d1a53ef73e60cbe620426f6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28660cc44d1a53ef73e60cbe620426f6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519"},{"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/5c1c4d4b-184b-447d-b756-071c894cce42"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"}}},"level":"info","message":"received a callback","requestID":"28660cc44d1a53ef73e60cbe620426f6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9cec50f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb694e88b-3726-4647-9ee2-c6460dd199f0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e6fd962-5f77-441d-abb2-11e8f6f4d988","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.3082614} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.161792,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cec50f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","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":"9cec50f0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9cec50f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0 200 9ms","method":"GET","requestID":"9cec50f0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"28660cc44d1a53ef73e60cbe620426f6","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"28660cc44d1a53ef73e60cbe620426f6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cf06fa0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eedb413d-e561-40f0-8f52-265f4345b180","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.3343542} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.25546,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cf06fa0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9cf06fa0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cf06fa0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling 200 9ms","method":"POST","requestID":"9cf06fa0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cf24460-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc0649d1-3daf-4e21-a1fc-b193dbda2a66","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.3468559} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.238826,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cf24460-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","rebac_allow":false,"scope_allow":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":"9cf24460-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cf24460-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling 200 9ms","method":"POST","requestID":"9cf24460-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"772ed7f1511972fa86226a751be9aacb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"772ed7f1511972fa86226a751be9aacb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","requestID":"772ed7f1511972fa86226a751be9aacb"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.755617,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"772ed7f1511972fa86226a751be9aacb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"772ed7f1511972fa86226a751be9aacb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","requestID":"772ed7f1511972fa86226a751be9aacb"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"772ed7f1511972fa86226a751be9aacb"} experiment-1 | {"level":"info","message":"GET /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c 200 12ms","method":"GET","requestID":"772ed7f1511972fa86226a751be9aacb","responseTime":12,"status":200,"url":"/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.835516,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Attempting to finish experiment","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.730163,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","device":"a0253cf7-e541-469e-a5bc-e7f586143519","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0","device":"5c1c4d4b-184b-447d-b756-071c894cce42","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/b694e88b-3726-4647-9ee2-c6460dd199f0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb694e88b-3726-4647-9ee2-c6460dd199f0': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb694e88b-3726-4647-9ee2-c6460dd199f0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"55f67b95-5f56-4675-8e4a-93ca57f1e7b8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.406589} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ad38434-4122-466d-a99b-92164aab93b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.4069645} 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/a0253cf7-e541-469e-a5bc-e7f586143519"},{"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/5c1c4d4b-184b-447d-b756-071c894cce42"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"}}},"level":"info","message":"received a callback","requestID":"ecda9a10528c1831571ada8200f78998"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ecda9a10528c1831571ada8200f78998","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ecda9a10528c1831571ada8200f78998","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"008735528b627b631c3d3df2e58521e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"008735528b627b631c3d3df2e58521e1","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/a0253cf7-e541-469e-a5bc-e7f586143519"},{"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/5c1c4d4b-184b-447d-b756-071c894cce42"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"}}},"level":"info","message":"received a callback","requestID":"008735528b627b631c3d3df2e58521e1"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b694e88b-3726-4647-9ee2-c6460dd199f0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0 204 40ms","method":"DELETE","requestID":"9cf9e580-651b-11ef-b0da-d12cff5a1914","responseTime":40,"status":204,"url":"/peerconnections/b694e88b-3726-4647-9ee2-c6460dd199f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"},"level":"info","message":"Successfully finished experiment","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9d03d090-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0253cf7-e541-469e-a5bc-e7f586143519","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1441b453-85ae-4be9-9217-34e892c8efcc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.4614215} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.242711,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9d03d090-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d03d090-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9d03d090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling 200 9ms","method":"POST","requestID":"9d03d090-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/a0253cf7-e541-469e-a5bc-e7f586143519/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9d057e40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1d220f2b-afb4-4242-8332-db2bdc6a997c': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1d220f2b-afb4-4242-8332-db2bdc6a997c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"cc0e30ed-44db-48e1-bb84-191098aa0b37","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.471081} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30e7d570-8e02-4887-8fe8-d4634f8d0281","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.4713511} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c1c4d4b-184b-447d-b756-071c894cce42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"914454e5-0bab-4096-a5c2-39724ecfadc2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.473809} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.34383,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9d057e40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42","object_type":"device","rebac_allow":false,"scope_allow":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":"9d057e40-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9d057e40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling 200 11ms","method":"POST","requestID":"9d057e40-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/5c1c4d4b-184b-447d-b756-071c894cce42/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669"} experiment-1 | {"level":"info","message":"DELETE /experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c 204 164ms","method":"DELETE","requestID":"9c801a6bfe4d7bf9dcb1cda9d9df7669","responseTime":164,"status":204,"url":"/experiments/1d220f2b-afb4-4242-8332-db2bdc6a997c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"100757f4d2c68d07120065ef07442044"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"100757f4d2c68d07120065ef07442044","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"100757f4d2c68d07120065ef07442044"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.703","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"85d142c6febb215a425ca0aafc85b2b6"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +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.694","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9537f10101b7296d05eda99501d0d313"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.958203,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"100757f4d2c68d07120065ef07442044","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"ecda9a10528c1831571ada8200f78998","responseTime":151,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"ecda9a10528c1831571ada8200f78998"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"008735528b627b631c3d3df2e58521e1"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5c1c4d4b-184b-447d-b756-071c894cce42' closed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 154ms","method":"POST","requestID":"008735528b627b631c3d3df2e58521e1","responseTime":154,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a0253cf7-e541-469e-a5bc-e7f586143519' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4a7958d3-ef19-4521-9e6a-ab8e3c5a7f3d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.57862} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd682733-92f5-4e7e-ae55-2991d7adbb55","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.5830421} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"12e0ca64-7570-4491-a3f8-f61b52eb2b16","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.5919256} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aabd5912-e4f4-47ad-9a47-0426f7e99905","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.593485} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.591899389Z"}]},"request_id":"865643de-cbcb-4050-a6be-32fd9c06c7af","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.5978048} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"100757f4d2c68d07120065ef07442044"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +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":"100757f4d2c68d07120065ef07442044"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"100757f4d2c68d07120065ef07442044","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk","level":"info","message":"auth send jwt","requestID":"d9f82a4d7e344a57c41a18fd3c44b582"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d9f82a4d7e344a57c41a18fd3c44b582"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.744043,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d9f82a4d7e344a57c41a18fd3c44b582","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835474,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3NH0.nPTnS4Za7FPbRP4o1V6rV-J4sIdDm38SwMFPJhdZsQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"43d7ccfd-95f9-4dbe-96e5-131aa17e9652","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.6390111} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb5de131-c571-4520-862f-e98a48246f70","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.6449137} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"28399e4c-19eb-4cd5-b827-e92d71b60173","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.6634898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae85300a-c1a1-4fa2-baa3-7e512d12b48f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.6635816} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.663461670Z"}]},"request_id":"91193c5d-ed71-4f21-91b4-ce0b9d873e5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835474.6677399} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d9f82a4d7e344a57c41a18fd3c44b582"} gateway-1 | {"time_local":"28/Aug/2024:08:57:54 +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":"d9f82a4d7e344a57c41a18fd3c44b582"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"d9f82a4d7e344a57c41a18fd3c44b582","responseTime":65,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"041c927d8dbdcfc01bbd82686f586fa1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"041c927d8dbdcfc01bbd82686f586fa1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/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":"041c927d8dbdcfc01bbd82686f586fa1"} device-1 | {"level":"info","message":"OPTIONS /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/websocket 200 1ms","method":"OPTIONS","requestID":"041c927d8dbdcfc01bbd82686f586fa1","responseTime":1,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"53998298d1c19be0680e6b96980e2740"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53998298d1c19be0680e6b96980e2740","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"53998298d1c19be0680e6b96980e2740"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.057062,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"53998298d1c19be0680e6b96980e2740","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53998298d1c19be0680e6b96980e2740","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"64e086da6c40f6d454c65eaaa7526b2a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"64e086da6c40f6d454c65eaaa7526b2a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/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":"64e086da6c40f6d454c65eaaa7526b2a"} device-1 | {"level":"info","message":"OPTIONS /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/websocket 200 0ms","method":"OPTIONS","requestID":"64e086da6c40f6d454c65eaaa7526b2a","responseTime":0,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"780ea733208beb4800bc960342f05db6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"780ea733208beb4800bc960342f05db6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"780ea733208beb4800bc960342f05db6"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654183,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"780ea733208beb4800bc960342f05db6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"780ea733208beb4800bc960342f05db6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"53998298d1c19be0680e6b96980e2740"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"53998298d1c19be0680e6b96980e2740"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/websocket 200 32ms","method":"POST","requestID":"53998298d1c19be0680e6b96980e2740","responseTime":32,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"780ea733208beb4800bc960342f05db6"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"780ea733208beb4800bc960342f05db6"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/websocket 200 28ms","method":"POST","requestID":"780ea733208beb4800bc960342f05db6","responseTime":28,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"119f6b9e6c2483671704d8f4ca228a0b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"119f6b9e6c2483671704d8f4ca228a0b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"119f6b9e6c2483671704d8f4ca228a0b"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687763,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"119f6b9e6c2483671704d8f4ca228a0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"119f6b9e6c2483671704d8f4ca228a0b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.591899389Z"}]},"request_id":"71f2c33d-660f-4a10-89e0-9840c14d3cec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.7326598} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"119f6b9e6c2483671704d8f4ca228a0b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"119f6b9e6c2483671704d8f4ca228a0b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"119f6b9e6c2483671704d8f4ca228a0b"} device-1 | {"level":"info","message":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? 200 11ms","method":"GET","requestID":"119f6b9e6c2483671704d8f4ca228a0b","responseTime":11,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"ec1fd6a3089ffcfa40c782c878f27513"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ec1fd6a3089ffcfa40c782c878f27513","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec1fd6a3089ffcfa40c782c878f27513"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705916,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ec1fd6a3089ffcfa40c782c878f27513","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ec1fd6a3089ffcfa40c782c878f27513","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.663461670Z"}]},"request_id":"40fe2978-4c68-4d30-9c84-01211d872f9f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.7464855} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ec1fd6a3089ffcfa40c782c878f27513","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec1fd6a3089ffcfa40c782c878f27513"} device-1 | {"level":"info","message":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? 200 9ms","method":"GET","requestID":"ec1fd6a3089ffcfa40c782c878f27513","responseTime":9,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d?"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec1fd6a3089ffcfa40c782c878f27513"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"dd807ffa07a0655ffa20114029461d3b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"dd807ffa07a0655ffa20114029461d3b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dd807ffa07a0655ffa20114029461d3b"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.672817,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"dd807ffa07a0655ffa20114029461d3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd807ffa07a0655ffa20114029461d3b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to run experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to book experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully booked experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997877,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696585,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.591899389Z"}]},"request_id":"777d0c41-fa4d-4535-8754-89498ebb27f5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.8158886} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.663461670Z"}]},"request_id":"0f30684e-68b0-425a-abd5-41fc3b9fd647","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.8168879} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? 200 14ms","method":"GET","requestID":"9e6a8c80-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? 200 14ms","method":"GET","requestID":"9e6ab390-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Setting up experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully set up experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e782110-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e789640-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully running experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914831,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e782110-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e782110-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849283,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.937876,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"661a21da-2341-47c9-b2a7-42538f418c77","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9067154} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e789640-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","rebac_allow":false,"scope_allow":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":"9e789640-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.591899389Z"}]},"request_id":"a8059507-5cf8-49c8-8066-0d495d69fdb7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9099882} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9e782110-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.663461670Z"}]},"request_id":"26285987-e5fa-4bec-9ab9-61ac7b6ca907","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9129634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e789640-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling 200 15ms","method":"POST","requestID":"9e789640-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e7b5560-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e782110-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? 200 23ms","method":"GET","requestID":"9e782110-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? 200 22ms","method":"GET","requestID":"9e786f30-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"256c6624-17c1-47a7-82c4-42d36adfb5ae","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9227364} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F101ea03b-624d-42b7-a82f-4329e6842fba#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F101ea03b-624d-42b7-a82f-4329e6842fba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e83f6880-ea03-4565-aa6d-cbd713e3cf85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.923291} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"001eacd6-e090-4b7b-aa72-4f57da9639a3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.923551} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e7c66d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"dd807ffa07a0655ffa20114029461d3b","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.046262,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e7b5560-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","rebac_allow":false,"scope_allow":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":"9e7b5560-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e7b5560-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling 200 12ms","method":"POST","requestID":"9e7b5560-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6931890a-ea56-4fd9-a8d9-31ce87db08a5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.93051} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.809948,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e7c66d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","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/101ea03b-624d-42b7-a82f-4329e6842fba","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dd807ffa07a0655ffa20114029461d3b"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e7c66d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 179ms","method":"POST","requestID":"dd807ffa07a0655ffa20114029461d3b","responseTime":179,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e7c66d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling 200 10ms","method":"POST","requestID":"9e7c66d0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"3309c804c381a137c7acce0175423016"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3309c804c381a137c7acce0175423016","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e7e3b90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3309c804c381a137c7acce0175423016"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002679,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3309c804c381a137c7acce0175423016","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3309c804c381a137c7acce0175423016","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4be63a9-a627-4d0e-ad38-f140598062d6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9424043} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.931466,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e7e3b90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","rebac_allow":false,"scope_allow":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":"9e7e3b90-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.591899389Z"}]},"request_id":"1c1312b4-f5e5-4c81-812d-56ea23fd5077","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9463968} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e7e3b90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling 200 10ms","method":"POST","requestID":"9e7e3b90-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3309c804c381a137c7acce0175423016","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Building connection plan","requestID":"dd807ffa07a0655ffa20114029461d3b"} 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":"552538f6-2b1e-4a78-bc72-d3278956357a"},{"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":"55b5e622-6fb7-44e1-bcf8-85c044692622"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b6dc3f98-0ba8-4b6a-944e-a41223db54bb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dd807ffa07a0655ffa20114029461d3b"} 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/33bc7884-2c36-4a54-9b71-338b6cf9f34d"},{"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/657f429a-6f9e-4ee0-9404-669ccebea31a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dd807ffa07a0655ffa20114029461d3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3309c804c381a137c7acce0175423016"} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? 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":"3309c804c381a137c7acce0175423016"} device-1 | {"level":"info","message":"GET /devices/657f429a-6f9e-4ee0-9404-669ccebea31a? 200 11ms","method":"GET","requestID":"3309c804c381a137c7acce0175423016","responseTime":11,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo","level":"info","message":"auth send jwt","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.79417,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902322,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835476,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3Nn0.u3FiuMal7H9RXPs6LMJGCtpbgkrfJR4dzSdUCzXdbEo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:54.663461670Z"}]},"request_id":"92dbada4-5485-40da-a0c7-b5ddfda8e06a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.962339} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b15bf374-6da8-4bf7-9494-765c68ac5757","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9653783} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f80d1a24-fdff-4f57-8472-87122938d858","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835476.9657907} gateway-1 | {"time_local":"28/Aug/2024:08:57:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? 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":"c8ca9def643e37dc14c1ce7c63e7cfd0"} device-1 | {"level":"info","message":"GET /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d? 200 12ms","method":"GET","requestID":"c8ca9def643e37dc14c1ce7c63e7cfd0","responseTime":12,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce'","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce'","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9e805e70-651b-11ef-b0da-d12cff5a1914"} 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":"9e805e70-651b-11ef-b0da-d12cff5a1914","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":"9e805e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","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} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","device":"657f429a-6f9e-4ee0-9404-669ccebea31a","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/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dd807ffa07a0655ffa20114029461d3b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e89fb60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9d967f0-13a5-445a-87f8-9ecdfa59b978","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.0189004} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.950796,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e89fb60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","rebac_allow":false,"scope_allow":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":"9e89fb60-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e89fb60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling 200 17ms","method":"POST","requestID":"9e89fb60-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e8ce190-651b-11ef-b0da-d12cff5a1914"} device-1 | {"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} device-1 | {"content":{"canTrickle":true},"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ceed9cbc-6f75-4484-8432-f19f14c47213","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.038539} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.486486,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e8ce190-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e8ce190-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 7907116214562277460 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:gXWK\r\na=ice-pwd:l+zgdbPndsNsSNBE83R21rG0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F2:DC:4C:0D:CF:70:E8:09:17:31:98:7B:E8:E6:50:E5:71:DF:6D:07:01:64:4E:AD:B2:A3:26:DC:9F:89:6B:03\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e8ce190-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling 200 12ms","method":"POST","requestID":"9e8ce190-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6396396260847402840 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:wjDZ\r\na=ice-pwd:dgdg0cIWlUkm5Ad4HbNpvIx/\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8D:70:EF:B9:C1:A5:DC:90:F4:1E:A2:76:F6:FE:89:1B:DE:47:8A:56:BE:7D:08:40:DE:C1:F9:00:72:70:B5:F8\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3986690173 1 udp 2113937151 d58e9e8c-f99e-4d0f-91b5-8a5fa99e1da5.local 54965 typ host generation 0 ufrag wjDZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1370757904 1 udp 2113937151 1c84ac10-37b1-41b1-8907-9158fe9c3065.local 59971 typ host generation 0 ufrag gXWK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1770879490 1 udp 1677729535 141.24.211.56 54965 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wjDZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3583603055 1 udp 1677729535 141.24.211.56 59971 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag gXWK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","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/b2f1b088-872f-42df-994d-7597889ab5ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5886e1ff68386aadb16d34ed22529747","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5886e1ff68386aadb16d34ed22529747","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"657f429a-6f9e-4ee0-9404-669ccebea31a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","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/33bc7884-2c36-4a54-9b71-338b6cf9f34d"},{"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/657f429a-6f9e-4ee0-9404-669ccebea31a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"}}},"level":"info","message":"received a callback","requestID":"5886e1ff68386aadb16d34ed22529747"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"5886e1ff68386aadb16d34ed22529747","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"5886e1ff68386aadb16d34ed22529747"} device-1 | {"device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","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/b2f1b088-872f-42df-994d-7597889ab5ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"329c18f28342da770e115171ec349da9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"329c18f28342da770e115171ec349da9","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/33bc7884-2c36-4a54-9b71-338b6cf9f34d"},{"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/657f429a-6f9e-4ee0-9404-669ccebea31a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"}}},"level":"info","message":"received a callback","requestID":"329c18f28342da770e115171ec349da9"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9e9d3540-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f1b088-872f-42df-994d-7597889ab5ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b1471d0-3b77-435d-abed-14bef4f3ffbb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.1447096} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.599174,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9e9d3540-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","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":"9e9d3540-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9e9d3540-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce 200 9ms","method":"GET","requestID":"9e9d3540-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"329c18f28342da770e115171ec349da9","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"329c18f28342da770e115171ec349da9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ea1a210-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a75a2253-b25e-4dc3-bbf5-b15537572661","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.1740346} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.517667,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9ea1a210-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","rebac_allow":false,"scope_allow":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":"9ea1a210-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ea1a210-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling 200 9ms","method":"POST","requestID":"9ea1a210-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ea34fc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb32d664-d6e2-4326-b468-ed2771eaa857","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.1838207} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.1219,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9ea34fc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","rebac_allow":false,"scope_allow":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":"9ea34fc0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ea34fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling 200 7ms","method":"POST","requestID":"9ea34fc0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM","level":"info","message":"auth send jwt","requestID":"e385358722eb22dfdc38f3a638bbac60"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e385358722eb22dfdc38f3a638bbac60","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/101ea03b-624d-42b7-a82f-4329e6842fba","requestID":"e385358722eb22dfdc38f3a638bbac60"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.676155,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e385358722eb22dfdc38f3a638bbac60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835477,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e385358722eb22dfdc38f3a638bbac60","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/101ea03b-624d-42b7-a82f-4329e6842fba","requestID":"e385358722eb22dfdc38f3a638bbac60"} experiment-1 | {"level":"info","message":"GET /experiments/101ea03b-624d-42b7-a82f-4329e6842fba 200 9ms","method":"GET","requestID":"e385358722eb22dfdc38f3a638bbac60","responseTime":9,"status":200,"url":"/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"} gateway-1 | {"time_local":"28/Aug/2024:08:57:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/101ea03b-624d-42b7-a82f-4329e6842fba HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e385358722eb22dfdc38f3a638bbac60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM","level":"info","message":"auth send jwt","requestID":"baeda967580ee6d748715a479041199b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"baeda967580ee6d748715a479041199b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/101ea03b-624d-42b7-a82f-4329e6842fba","requestID":"baeda967580ee6d748715a479041199b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.711007,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"baeda967580ee6d748715a479041199b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835477,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"baeda967580ee6d748715a479041199b","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Attempting to finish experiment","requestID":"baeda967580ee6d748715a479041199b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.690281,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835477,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","device":"33bc7884-2c36-4a54-9b71-338b6cf9f34d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce","device":"657f429a-6f9e-4ee0-9404-669ccebea31a","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/b2f1b088-872f-42df-994d-7597889ab5ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f1b088-872f-42df-994d-7597889ab5ce': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb2f1b088-872f-42df-994d-7597889ab5ce","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"30661c16-23e7-49dd-bd64-058edb01ad13","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.2549577} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7937189a1fbaa31b96e33ef546c93398","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea94b566-68dd-47d7-b656-a6dbac2506cd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.2552693} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7937189a1fbaa31b96e33ef546c93398","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db4a446d6e4acc26f0d423d1432b00d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/33bc7884-2c36-4a54-9b71-338b6cf9f34d"},{"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/657f429a-6f9e-4ee0-9404-669ccebea31a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"}}},"level":"info","message":"received a callback","requestID":"7937189a1fbaa31b96e33ef546c93398"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"db4a446d6e4acc26f0d423d1432b00d8","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/33bc7884-2c36-4a54-9b71-338b6cf9f34d"},{"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/657f429a-6f9e-4ee0-9404-669ccebea31a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"}}},"level":"info","message":"received a callback","requestID":"db4a446d6e4acc26f0d423d1432b00d8"} device-1 | {"data":{"peerconnection":"b2f1b088-872f-42df-994d-7597889ab5ce","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce 204 35ms","method":"DELETE","requestID":"9eac7780-651b-11ef-b0da-d12cff5a1914","responseTime":35,"status":204,"url":"/peerconnections/b2f1b088-872f-42df-994d-7597889ab5ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"},"level":"info","message":"Successfully finished experiment","requestID":"baeda967580ee6d748715a479041199b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9eb48dd0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F33bc7884-2c36-4a54-9b71-338b6cf9f34d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f09f7d0f-4511-44a1-b004-37c9010bee43","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.2993877} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.035921,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9eb48dd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d","object_type":"device","rebac_allow":false,"scope_allow":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":"9eb48dd0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9eb48dd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling 200 10ms","method":"POST","requestID":"9eb48dd0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9eb689a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F657f429a-6f9e-4ee0-9404-669ccebea31a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bda44027-c0ed-4bf9-b09d-500ad9ab4022","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.3106809} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.33544,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9eb689a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a","object_type":"device","rebac_allow":false,"scope_allow":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":"9eb689a0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F101ea03b-624d-42b7-a82f-4329e6842fba': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F101ea03b-624d-42b7-a82f-4329e6842fba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"b7b0dd8d-4bee-45f7-b9de-9082704933de","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.3132327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5cb301c5-b38c-4e41-b5fc-045edee8bb94","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.3134356} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"baeda967580ee6d748715a479041199b","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9eb689a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling 200 11ms","method":"POST","requestID":"9eb689a0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/657f429a-6f9e-4ee0-9404-669ccebea31a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/101ea03b-624d-42b7-a82f-4329e6842fba","requestID":"baeda967580ee6d748715a479041199b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/101ea03b-624d-42b7-a82f-4329e6842fba 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":"baeda967580ee6d748715a479041199b"} experiment-1 | {"level":"info","message":"DELETE /experiments/101ea03b-624d-42b7-a82f-4329e6842fba 204 148ms","method":"DELETE","requestID":"baeda967580ee6d748715a479041199b","responseTime":148,"status":204,"url":"/experiments/101ea03b-624d-42b7-a82f-4329e6842fba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"7937189a1fbaa31b96e33ef546c93398","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"7937189a1fbaa31b96e33ef546c93398"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM","level":"info","message":"auth send jwt","requestID":"a6a57ec7e3f998a0006b56494fa4d775"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6a57ec7e3f998a0006b56494fa4d775","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"db4a446d6e4acc26f0d423d1432b00d8","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"db4a446d6e4acc26f0d423d1432b00d8"} device-1 | {"level":"info","message":"postDevices called","requestID":"a6a57ec7e3f998a0006b56494fa4d775"} gateway-1 | {"time_local":"28/Aug/2024:08:57:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.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":"895f459a2df9ffbc1df67283e1a409b4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.006868,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a6a57ec7e3f998a0006b56494fa4d775","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835477,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:57:57 +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.699","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a4ba31fb8c5e3a71139f279f329ea441"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/33bc7884-2c36-4a54-9b71-338b6cf9f34d' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/657f429a-6f9e-4ee0-9404-669ccebea31a' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e435771f-f3ae-4834-8bf5-e752354c7dec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4211903} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8629d46e-e057-4099-90b3-546833f7fd85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4263046} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"952f6aab-4a9a-4802-8c2e-0996d95b916d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4360147} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a86fc2c-57b2-4ddc-ae09-6a526b989e41","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4361656} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.435995055Z"}]},"request_id":"e95a920e-d987-4f64-8725-cc02b95a8b2e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4402113} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a6a57ec7e3f998a0006b56494fa4d775"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6a57ec7e3f998a0006b56494fa4d775"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"a6a57ec7e3f998a0006b56494fa4d775","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM","level":"info","message":"auth send jwt","requestID":"525bcfdf052aa9e1b5e437e1233f4a44"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"525bcfdf052aa9e1b5e437e1233f4a44"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.714529,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"525bcfdf052aa9e1b5e437e1233f4a44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835477,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3N30.CSzp0tg5S41QbKzg1mClqb5NljnvA4n1qazMLcfpzfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d1a7eeae-d79b-4792-b33f-1c224d3c121f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4647563} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd45f926-2ff0-4f9e-90d3-92a22a25e254","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.468954} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e372be54-e20c-4ec8-aea4-3862435362a2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4820058} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3868f4e8-98e3-4a98-857c-f6e7607ee523","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4821382} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"15772f0d-0c0c-42d0-9d31-bd8b5f576194","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835477.4862585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"525bcfdf052aa9e1b5e437e1233f4a44"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"525bcfdf052aa9e1b5e437e1233f4a44","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:57: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"525bcfdf052aa9e1b5e437e1233f4a44"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OH0.EDZG774Oxr_p4KGvHetuDthOoXYNTcIVBkX_1cvPdWo","level":"info","message":"auth send jwt","requestID":"1c919e243536c174673698738fa56841"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1c919e243536c174673698738fa56841","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1c919e243536c174673698738fa56841"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690155,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1c919e243536c174673698738fa56841","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835478,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OH0.EDZG774Oxr_p4KGvHetuDthOoXYNTcIVBkX_1cvPdWo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1c919e243536c174673698738fa56841","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"564ef1b6-6789-4343-ac0e-fecb41e417ef","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835478.0581481} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c919e243536c174673698738fa56841","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"259841c8-a3c0-4511-bab9-f4de52a868a6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835478.062815} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1c919e243536c174673698738fa56841","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"2f71f885-925a-4cad-80ce-64b4ec723458","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835478.078255} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c919e243536c174673698738fa56841","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1c919e243536c174673698738fa56841"} device-1 | {"level":"info","message":"PATCH /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683 200 31ms","method":"PATCH","requestID":"1c919e243536c174673698738fa56841","responseTime":31,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683"} gateway-1 | {"time_local":"28/Aug/2024:08:57:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1c919e243536c174673698738fa56841"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OH0.EDZG774Oxr_p4KGvHetuDthOoXYNTcIVBkX_1cvPdWo","level":"info","message":"auth send jwt","requestID":"3f79e11efdaac8b68901ba09582600ac"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3f79e11efdaac8b68901ba09582600ac","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3f79e11efdaac8b68901ba09582600ac"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712791,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3f79e11efdaac8b68901ba09582600ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835478,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OH0.EDZG774Oxr_p4KGvHetuDthOoXYNTcIVBkX_1cvPdWo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3f79e11efdaac8b68901ba09582600ac","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3f79e11efdaac8b68901ba09582600ac"} gateway-1 | {"time_local":"28/Aug/2024:08:57:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3f79e11efdaac8b68901ba09582600ac"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/websocket 200 13ms","method":"POST","requestID":"3f79e11efdaac8b68901ba09582600ac","responseTime":13,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8d0a10f4e07cba692b01b6e54802c199","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8d0a10f4e07cba692b01b6e54802c199","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/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":"8d0a10f4e07cba692b01b6e54802c199"} device-1 | {"level":"info","message":"OPTIONS /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/websocket 200 1ms","method":"OPTIONS","requestID":"8d0a10f4e07cba692b01b6e54802c199","responseTime":1,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"95c4a89b7c85420d616270d35fb49bc1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95c4a89b7c85420d616270d35fb49bc1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"95c4a89b7c85420d616270d35fb49bc1"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73656,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"95c4a89b7c85420d616270d35fb49bc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95c4a89b7c85420d616270d35fb49bc1","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"95c4a89b7c85420d616270d35fb49bc1"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"95c4a89b7c85420d616270d35fb49bc1"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/websocket 200 41ms","method":"POST","requestID":"95c4a89b7c85420d616270d35fb49bc1","responseTime":41,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"9004caeb473ad8078c4508071bfabb8b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9004caeb473ad8078c4508071bfabb8b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9004caeb473ad8078c4508071bfabb8b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169477,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9004caeb473ad8078c4508071bfabb8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9004caeb473ad8078c4508071bfabb8b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.435995055Z"}]},"request_id":"65e416ee-0369-4781-863d-8777a1602f17","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.5230825} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9004caeb473ad8078c4508071bfabb8b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9004caeb473ad8078c4508071bfabb8b"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9004caeb473ad8078c4508071bfabb8b"} device-1 | {"level":"info","message":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? 200 18ms","method":"GET","requestID":"9004caeb473ad8078c4508071bfabb8b","responseTime":18,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"155e01cc499d4569a20c29a1612f3e6e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"155e01cc499d4569a20c29a1612f3e6e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"155e01cc499d4569a20c29a1612f3e6e"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944941,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"155e01cc499d4569a20c29a1612f3e6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"155e01cc499d4569a20c29a1612f3e6e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"9992122f-b955-4f63-bb41-f1cc095668f0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.5446084} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"155e01cc499d4569a20c29a1612f3e6e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"155e01cc499d4569a20c29a1612f3e6e"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 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":"155e01cc499d4569a20c29a1612f3e6e"} device-1 | {"level":"info","message":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 200 15ms","method":"GET","requestID":"155e01cc499d4569a20c29a1612f3e6e","responseTime":15,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"b38e5210c7e605159bedb475cc6583ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b38e5210c7e605159bedb475cc6583ca","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b38e5210c7e605159bedb475cc6583ca"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.89903,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b38e5210c7e605159bedb475cc6583ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b38e5210c7e605159bedb475cc6583ca","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to run experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to book experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully booked experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0149300-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.001616,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275365,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a0149300-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0149300-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.435995055Z"}]},"request_id":"b541cc2e-ce8e-4cc6-8529-c3775b0b81bd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.6096742} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"d449f21d-f4f2-49a5-9b64-0a2a2232b145","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.6111436} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0149300-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? 200 20ms","method":"GET","requestID":"a01444e0-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0149300-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 200 20ms","method":"GET","requestID":"a0149300-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Setting up experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully set up experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0213d30-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully running experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92743,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777656,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d07f8283-c6e7-48e9-8e2c-2eed50698b78","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.6894214} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.468432,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a0213d30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","rebac_allow":false,"scope_allow":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":"a0213d30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.435995055Z"}]},"request_id":"c43b7b7b-5075-4e88-823f-6d76508dfef7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.6906366} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"93f923fa-fb5a-447b-a05a-0f82e896798f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.6919537} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0213d30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling 200 17ms","method":"POST","requestID":"a0213d30-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? 200 22ms","method":"GET","requestID":"a020a0f0-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4f2f644d-87e1-46da-83aa-ccbccc555d30#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4f2f644d-87e1-46da-83aa-ccbccc555d30","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"a7b2db91-95ed-4fca-8853-bb03f4742375","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7013218} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdbf9f39-aa06-4bbd-82d5-f913556f892e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7016735} device-1 | {"level":"info","message":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 200 21ms","method":"GET","requestID":"a020ef10-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0244a70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b38e5210c7e605159bedb475cc6583ca","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0249890-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c694902-0848-4db6-82db-7953156f80f2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7073503} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.808641,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a0244a70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0244a70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a14386d-a89f-4e57-96ae-2d12755ddc7f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7101462} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.495956,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a0249890-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0249890-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b38e5210c7e605159bedb475cc6583ca"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"b38e5210c7e605159bedb475cc6583ca","responseTime":156,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0244a70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling 200 11ms","method":"POST","requestID":"a0244a70-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0249890-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling 200 11ms","method":"POST","requestID":"a0249890-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"7d09940d9082f84aa827a9b2f381a7d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7d09940d9082f84aa827a9b2f381a7d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a026bb70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d09940d9082f84aa827a9b2f381a7d5"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e21d1ca-eb11-4bf4-bfff-b9906609a865","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7231238} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772972,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7d09940d9082f84aa827a9b2f381a7d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d09940d9082f84aa827a9b2f381a7d5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.053727,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a026bb70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a026bb70-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.435995055Z"}]},"request_id":"f9199553-f0a4-45ed-a34f-de78e5c4c160","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7281241} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d09940d9082f84aa827a9b2f381a7d5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a026bb70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling 200 10ms","method":"POST","requestID":"a026bb70-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Building connection plan","requestID":"b38e5210c7e605159bedb475cc6583ca"} 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":"8faac63f-3f37-47f3-9f8d-1bb78169eb4f"},{"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":"3d1fa373-fbcf-4a17-ae06-0b4be1b3e022"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"321e212d-b1df-47c1-b497-21ea799f96cc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b38e5210c7e605159bedb475cc6583ca"} 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/e46579e8-f595-4d3d-b3bc-fd177feb6683"},{"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/90b44ee9-ffab-432e-96a4-8f880a5fdbff"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b38e5210c7e605159bedb475cc6583ca"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d09940d9082f84aa827a9b2f381a7d5"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? 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":"7d09940d9082f84aa827a9b2f381a7d5"} device-1 | {"level":"info","message":"GET /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff? 200 12ms","method":"GET","requestID":"7d09940d9082f84aa827a9b2f381a7d5","responseTime":12,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8","level":"info","message":"auth send jwt","requestID":"9a36c613e2112eb10e45ccbd50de14bf"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.81725,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a028de50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a36c613e2112eb10e45ccbd50de14bf","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a36c613e2112eb10e45ccbd50de14bf"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708395,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9a36c613e2112eb10e45ccbd50de14bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835479,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ3OX0.WoPVYeymvkF8rH0XCL8cyFhxEsBWE91HkBqdcsKBoA8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"9a36c613e2112eb10e45ccbd50de14bf","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:57:57.481986197Z"}]},"request_id":"2d2d23f2-0356-48dc-9608-0b2ffe273670","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7459753} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"5e579df9-0661-4fd3-b536-755a0fb41fe8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7468429} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6efdfefe-cfef-40d7-80a1-9cc4fc53e401","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.747133} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9a36c613e2112eb10e45ccbd50de14bf","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a36c613e2112eb10e45ccbd50de14bf"} gateway-1 | {"time_local":"28/Aug/2024:08:57:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 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":"9a36c613e2112eb10e45ccbd50de14bf"} device-1 | {"level":"info","message":"GET /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683? 200 15ms","method":"GET","requestID":"9a36c613e2112eb10e45ccbd50de14bf","responseTime":15,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d'","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d'","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a028de50-651b-11ef-b0da-d12cff5a1914"} 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":"a028de50-651b-11ef-b0da-d12cff5a1914","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":"a028de50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","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/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b38e5210c7e605159bedb475cc6583ca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a031df00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6755a177-42e1-4ff1-80cd-4418e0eceb68","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.7966583} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.465059,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a031df00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a031df00-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a031df00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling 200 9ms","method":"POST","requestID":"a031df00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling"} device-1 | {"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a033b3c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"content":{"sdp":"v=0\r\no=- 1963912270450523908 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:BKOw\r\na=ice-pwd:HjG+vLUbfL86ist3+i593wQ6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:9D:FF:13:E3:B5:AB:17:29:76:37:D8:69:E2:4B:95:8A:6D:A6:39:B3:22:D2:E3:A7:A6:6F:57:18:5B:53:74\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:57:59Z"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff'"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9ba9b21-ef8c-47a8-8731-0aa7328a0a3c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835479.8089566} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.539675,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:57:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a033b3c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a033b3c0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a033b3c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling 200 9ms","method":"POST","requestID":"a033b3c0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling"} device-1 | {"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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/fe188c4f-4b74-42d8-b904-f374b6b91c7d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b857d4724045e47f6243e2a6a25d728","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6b857d4724045e47f6243e2a6a25d728","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/e46579e8-f595-4d3d-b3bc-fd177feb6683"},{"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/90b44ee9-ffab-432e-96a4-8f880a5fdbff"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"}}},"level":"info","message":"received a callback","requestID":"6b857d4724045e47f6243e2a6a25d728"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"6b857d4724045e47f6243e2a6a25d728","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"6b857d4724045e47f6243e2a6a25d728"} device-1 | {"content":{"candidate":"candidate:1331980593 1 udp 2113937151 9606b83d-042f-4c59-bd6d-2429f895ef34.local 33728 typ host generation 0 ufrag BKOw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1832576956 1 udp 1677729535 141.24.211.56 33728 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag BKOw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1251018190 1 udp 33562623 141.24.210.113 65140 typ relay raddr 141.24.211.56 rport 33728 generation 0 ufrag BKOw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","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/90b44ee9-ffab-432e-96a4-8f880a5fdbff'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff'"} device-1 | {"device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","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/fe188c4f-4b74-42d8-b904-f374b6b91c7d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"319c87a28308f2d33cf07fe8d779df3c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"319c87a28308f2d33cf07fe8d779df3c","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/e46579e8-f595-4d3d-b3bc-fd177feb6683"},{"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/90b44ee9-ffab-432e-96a4-8f880a5fdbff"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"}}},"level":"info","message":"received a callback","requestID":"319c87a28308f2d33cf07fe8d779df3c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a173d4e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe188c4f-4b74-42d8-b904-f374b6b91c7d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"257e6a9a-c1e4-44ea-9e14-1fe10131d67e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835481.9071248} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.652445,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a173d4e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","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":"a173d4e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a173d4e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d 200 10ms","method":"GET","requestID":"a173d4e0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"319c87a28308f2d33cf07fe8d779df3c","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"319c87a28308f2d33cf07fe8d779df3c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a17841b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b0ea80c-6157-4395-a99f-09429186fb5a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835481.9381804} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.63262,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a17841b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","rebac_allow":false,"scope_allow":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":"a17841b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a17841b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling 200 11ms","method":"POST","requestID":"a17841b0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a17a6490-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33a1fda8-0850-4b41-b098-466db9db3669","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835481.9497414} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.744727,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a17a6490-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a17a6490-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a17a6490-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling 200 9ms","method":"POST","requestID":"a17a6490-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4MX0.Swz-HB2CaxG-qedqiJzUGm4k_2vPZaBqbpxijFhA1sc","level":"info","message":"auth send jwt","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.33532,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"325ed3a1e6a9d13833f1e4ddb06324d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835481,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4MX0.Swz-HB2CaxG-qedqiJzUGm4k_2vPZaBqbpxijFhA1sc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2"} experiment-1 | {"level":"info","message":"GET /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30 200 16ms","method":"GET","requestID":"325ed3a1e6a9d13833f1e4ddb06324d2","responseTime":16,"status":200,"url":"/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30 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":"325ed3a1e6a9d13833f1e4ddb06324d2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM","level":"info","message":"auth send jwt","requestID":"474a27980d2d2bc48a9e0526776eec89"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"474a27980d2d2bc48a9e0526776eec89","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","requestID":"474a27980d2d2bc48a9e0526776eec89"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.010667,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"474a27980d2d2bc48a9e0526776eec89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"474a27980d2d2bc48a9e0526776eec89","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Attempting to finish experiment","requestID":"474a27980d2d2bc48a9e0526776eec89"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.421096,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d","device":"90b44ee9-ffab-432e-96a4-8f880a5fdbff","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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":"e46579e8-f595-4d3d-b3bc-fd177feb6683","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/fe188c4f-4b74-42d8-b904-f374b6b91c7d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe188c4f-4b74-42d8-b904-f374b6b91c7d': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffe188c4f-4b74-42d8-b904-f374b6b91c7d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"4ee5fb58-2ce3-4b9c-90e1-ddc7d7e6dc0f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.0480444} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e3b35e1-f1dc-4a88-94fb-284ae9ebcafa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.0483427} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2fcfdec0decb9849e7d0edaca811520","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c2fcfdec0decb9849e7d0edaca811520","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":"closed","url":"http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683"},{"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/90b44ee9-ffab-432e-96a4-8f880a5fdbff"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"}}},"level":"info","message":"received a callback","requestID":"c2fcfdec0decb9849e7d0edaca811520"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8e8fce0d1da86737d152184107b649df","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8e8fce0d1da86737d152184107b649df","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/e46579e8-f595-4d3d-b3bc-fd177feb6683"},{"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/90b44ee9-ffab-432e-96a4-8f880a5fdbff"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"}}},"level":"info","message":"received a callback","requestID":"8e8fce0d1da86737d152184107b649df"} device-1 | {"data":{"peerconnection":"fe188c4f-4b74-42d8-b904-f374b6b91c7d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d 204 39ms","method":"DELETE","requestID":"a18735d0-651b-11ef-b0da-d12cff5a1914","responseTime":39,"status":204,"url":"/peerconnections/fe188c4f-4b74-42d8-b904-f374b6b91c7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"},"level":"info","message":"Successfully finished experiment","requestID":"474a27980d2d2bc48a9e0526776eec89"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a18f4c20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe46579e8-f595-4d3d-b3bc-fd177feb6683","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8e61a46-22d4-44a0-b846-0a7b8aba839f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.086518} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.469305,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a18f4c20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a18f4c20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a18f4c20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling 200 8ms","method":"POST","requestID":"a18f4c20-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4f2f644d-87e1-46da-83aa-ccbccc555d30': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4f2f644d-87e1-46da-83aa-ccbccc555d30","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"da261302-7077-4516-bdd6-4cd12ca74b13","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.0936558} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a190f9d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0fee8fa-a82a-454f-8ed1-6ebf0a5a7d92","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.093769} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"474a27980d2d2bc48a9e0526776eec89","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F90b44ee9-ffab-432e-96a4-8f880a5fdbff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cb2e758-a045-4d3b-adcf-242c7faa1c1d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.098355} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.519007,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a190f9d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a190f9d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a190f9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling 200 9ms","method":"POST","requestID":"a190f9d0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/90b44ee9-ffab-432e-96a4-8f880a5fdbff/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30","requestID":"474a27980d2d2bc48a9e0526776eec89"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30 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":"474a27980d2d2bc48a9e0526776eec89"} experiment-1 | {"level":"info","message":"DELETE /experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30 204 140ms","method":"DELETE","requestID":"474a27980d2d2bc48a9e0526776eec89","responseTime":140,"status":204,"url":"/experiments/4f2f644d-87e1-46da-83aa-ccbccc555d30"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3230","request_time":"4.054","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"726fb2964fe263c9ff661b35b545692e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"c2fcfdec0decb9849e7d0edaca811520","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"c2fcfdec0decb9849e7d0edaca811520"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM","level":"info","message":"auth send jwt","requestID":"56074edc587e89c75e92c9e4454db32c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"56074edc587e89c75e92c9e4454db32c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"56074edc587e89c75e92c9e4454db32c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"8e8fce0d1da86737d152184107b649df","responseTime":112,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"8e8fce0d1da86737d152184107b649df"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +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.680","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a790278900edd28844219608e4083758"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.305959,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e46579e8-f595-4d3d-b3bc-fd177feb6683' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"56074edc587e89c75e92c9e4454db32c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","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/90b44ee9-ffab-432e-96a4-8f880a5fdbff' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cde76517-78c6-499e-ba69-4838ba1c5add","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.1836834} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"acf4f4af-32f2-46b0-be83-030d2a2a2f25","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.1879227} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"d824db4c-14a1-4e8e-9be2-cbea9995b3e0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.1973202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbcdc622-b372-44cc-9a7b-7736e3ab942b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.1975524} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.197291586Z"}]},"request_id":"062f809f-f6b3-4f02-89a6-d1f44f1f00d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.2023067} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"56074edc587e89c75e92c9e4454db32c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56074edc587e89c75e92c9e4454db32c"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"56074edc587e89c75e92c9e4454db32c","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM","level":"info","message":"auth send jwt","requestID":"42b2ee0dc33adf356af4786354d1a9b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"42b2ee0dc33adf356af4786354d1a9b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"42b2ee0dc33adf356af4786354d1a9b1"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.687768,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"42b2ee0dc33adf356af4786354d1a9b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"28e69f84-a8ec-4196-aeca-a7b8b9175f9d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.2296326} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"143a7b7a-1e79-4e58-90d0-9270b1ae8592","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.2362356} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"c68c01a5-0d80-4001-b08a-59b4e6fe03ae","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.2459683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9529c30-d59d-448b-b503-ebe9c63f19ce","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.246205} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"7d339016-c463-46e5-9aa7-ee575320e5b5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.250084} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"42b2ee0dc33adf356af4786354d1a9b1"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"42b2ee0dc33adf356af4786354d1a9b1","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42b2ee0dc33adf356af4786354d1a9b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM","level":"info","message":"auth send jwt","requestID":"f97b9d98ebf2272e30496fe2af29813b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f97b9d98ebf2272e30496fe2af29813b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f97b9d98ebf2272e30496fe2af29813b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.782646,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f97b9d98ebf2272e30496fe2af29813b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f97b9d98ebf2272e30496fe2af29813b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"bd5c4645-495b-4cb0-8076-f8ef69e7cc98","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.8351326} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f97b9d98ebf2272e30496fe2af29813b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cad6675-9303-4e7a-a339-ba93e90756ad","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.8399646} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f97b9d98ebf2272e30496fe2af29813b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"3240c822-3752-4c72-b253-d638053d0f3d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835482.8521714} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f97b9d98ebf2272e30496fe2af29813b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f97b9d98ebf2272e30496fe2af29813b"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f97b9d98ebf2272e30496fe2af29813b"} device-1 | {"level":"info","message":"PATCH /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a 200 28ms","method":"PATCH","requestID":"f97b9d98ebf2272e30496fe2af29813b","responseTime":28,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM","level":"info","message":"auth send jwt","requestID":"593505aa7b256c1e5c2e0c881ea5e02f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"593505aa7b256c1e5c2e0c881ea5e02f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"593505aa7b256c1e5c2e0c881ea5e02f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714878,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"593505aa7b256c1e5c2e0c881ea5e02f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835482,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4Mn0.97tWaHMSWVQDVMLWxjj0qNS4-17eLK105p_jzlQXUmM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"593505aa7b256c1e5c2e0c881ea5e02f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"593505aa7b256c1e5c2e0c881ea5e02f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"593505aa7b256c1e5c2e0c881ea5e02f"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/websocket 200 15ms","method":"POST","requestID":"593505aa7b256c1e5c2e0c881ea5e02f","responseTime":15,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df941905432d6cc1fa159f002979b9a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"df941905432d6cc1fa159f002979b9a2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/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":"df941905432d6cc1fa159f002979b9a2"} device-1 | {"level":"info","message":"OPTIONS /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/websocket 200 1ms","method":"OPTIONS","requestID":"df941905432d6cc1fa159f002979b9a2","responseTime":1,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"391ee0ae67e231c698b1cbd146406ca9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"391ee0ae67e231c698b1cbd146406ca9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"391ee0ae67e231c698b1cbd146406ca9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.844232,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"391ee0ae67e231c698b1cbd146406ca9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"391ee0ae67e231c698b1cbd146406ca9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"391ee0ae67e231c698b1cbd146406ca9"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"391ee0ae67e231c698b1cbd146406ca9"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/websocket 200 37ms","method":"POST","requestID":"391ee0ae67e231c698b1cbd146406ca9","responseTime":37,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"06407142fe72b3093ca516e63a52b02e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"06407142fe72b3093ca516e63a52b02e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06407142fe72b3093ca516e63a52b02e"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689609,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"06407142fe72b3093ca516e63a52b02e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06407142fe72b3093ca516e63a52b02e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.197291586Z"}]},"request_id":"1e95c3e9-7ed2-4b34-90ad-42f6bb4c49b2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.2490108} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"06407142fe72b3093ca516e63a52b02e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06407142fe72b3093ca516e63a52b02e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? 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":"06407142fe72b3093ca516e63a52b02e"} device-1 | {"level":"info","message":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? 200 11ms","method":"GET","requestID":"06407142fe72b3093ca516e63a52b02e","responseTime":11,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"e956ec0dbe1266c466fc61a4222a3b9d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e956ec0dbe1266c466fc61a4222a3b9d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e956ec0dbe1266c466fc61a4222a3b9d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902908,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e956ec0dbe1266c466fc61a4222a3b9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e956ec0dbe1266c466fc61a4222a3b9d","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"dc5c0b5d-5622-4932-af84-1ed057f9c13f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.2670202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e956ec0dbe1266c466fc61a4222a3b9d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e956ec0dbe1266c466fc61a4222a3b9d"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 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":"e956ec0dbe1266c466fc61a4222a3b9d"} device-1 | {"level":"info","message":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 200 13ms","method":"GET","requestID":"e956ec0dbe1266c466fc61a4222a3b9d","responseTime":13,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"874aed9a028ea261957ff8ae90b7b890"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"874aed9a028ea261957ff8ae90b7b890","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"874aed9a028ea261957ff8ae90b7b890"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.548701,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"874aed9a028ea261957ff8ae90b7b890","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"874aed9a028ea261957ff8ae90b7b890","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to run experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to book experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully booked experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.70541,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707009,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.197291586Z"}]},"request_id":"b307b731-18a7-48a2-a53a-262be5b97caa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.3272676} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"ed038393-3dbe-4044-b03f-167fa288a0b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.3280456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? 200 13ms","method":"GET","requestID":"a2e4a2f0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 200 12ms","method":"GET","requestID":"a2e4ca00-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Setting up experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully locked booking for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to update booking for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully updated booking for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully set up experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2ed2e70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731269,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully running experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790048,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a631c6af-2dc4-4018-9fe9-bf09cd27d6f4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.3811793} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107086,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2ed2e70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","rebac_allow":false,"scope_allow":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":"a2ed2e70-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"db223eeb-098d-4c4a-8af9-9f3cc6601587","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.3834443} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.197291586Z"}]},"request_id":"2e6c5de6-306c-4f19-a735-d873101b49d7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.3842807} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 200 17ms","method":"GET","requestID":"a2ece050-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2ed2e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling 200 15ms","method":"POST","requestID":"a2ed2e70-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? 200 19ms","method":"GET","requestID":"a2ecb940-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2efed90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2f014a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4344adb-1c7e-43f4-ae9a-c04eb84ef868","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.397925} authorization-1 | {"client_addr":"127.0.0.1:38220","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.780287,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2efed90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","rebac_allow":false,"scope_allow":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":"a2efed90-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32c5e0cc-ead6-4cb9-8e4e-75d9983f9e64","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.399638} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.86356,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2f014a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2f014a0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2efed90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling 200 12ms","method":"POST","requestID":"a2efed90-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2f014a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling 200 12ms","method":"POST","requestID":"a2f014a0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2f2acb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed4d391a-1f4f-44df-80e8-20beccb21247","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.416287} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.928535,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2f2acb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","rebac_allow":false,"scope_allow":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":"a2f2acb0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2f2acb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling 200 10ms","method":"POST","requestID":"a2f2acb0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Building connection plan","requestID":"874aed9a028ea261957ff8ae90b7b890"} 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":"e82e23c9-880d-43fa-8594-679603073200"},{"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":"13fe7420-560c-4761-999f-cb1a968c5a1f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1d07a138-9893-4ed9-8755-c1b787fb8a79"}]},"level":"info","message":"Built pairwise service configurations","requestID":"874aed9a028ea261957ff8ae90b7b890"} 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/6978b562-44b7-470f-a7dd-d657ef7dba1d"},{"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/4ab5a744-4293-4e90-81a2-714b25b18f8a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"874aed9a028ea261957ff8ae90b7b890"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.276716,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487085b1-7064-4fbb-8572-282a060ec8be#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487085b1-7064-4fbb-8572-282a060ec8be","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"ab34dc4b-7e70-4d86-b569-83f38e94c346","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.5395968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dba5da1-cf9e-4b0a-a0b1-3436323f4a12","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.5399022} authorization-1 | {"level":"info","message":"POST /relations/update 200 162ms","method":"POST","requestID":"874aed9a028ea261957ff8ae90b7b890","responseTime":162,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"b39995b9-3c8b-4229-b570-7dc167f05325","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.5408335} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9181287c-457b-4878-b819-b8056a812655","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.541156} authorization-1 | {"level":"info","message":"POST /relations/update 200 111ms","method":"POST","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914","responseTime":111,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"874aed9a028ea261957ff8ae90b7b890"} experiment-1 | {"level":"info","message":"POST /experiments? 201 273ms","method":"POST","requestID":"874aed9a028ea261957ff8ae90b7b890","responseTime":273,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.278","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"874aed9a028ea261957ff8ae90b7b890"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c82067527554fee036cf24faab490f92"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"c82067527554fee036cf24faab490f92"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c82067527554fee036cf24faab490f92","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714302,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c82067527554fee036cf24faab490f92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c82067527554fee036cf24faab490f92","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.197291586Z"}]},"request_id":"7423c740-c408-4f9c-9d88-2b101981385f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.5703778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c82067527554fee036cf24faab490f92","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f'","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f'","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 372ms","method":"POST","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914","responseTime":372,"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":"c82067527554fee036cf24faab490f92"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.246","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c82067527554fee036cf24faab490f92"} device-1 | {"level":"info","message":"GET /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d? 200 241ms","method":"GET","requestID":"c82067527554fee036cf24faab490f92","responseTime":241,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a2f48170-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8","level":"info","message":"auth send jwt","requestID":"8e920ddf54b584a920b8922e277d81b6"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"8e920ddf54b584a920b8922e277d81b6","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e920ddf54b584a920b8922e277d81b6"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:04Z"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","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} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.664957,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8e920ddf54b584a920b8922e277d81b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835484,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4NH0.FHPNpwiynyVNqdJBhSzadAv3t6-kw_Cb3FIKvbwc3R8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8e920ddf54b584a920b8922e277d81b6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:02.245947351Z"}]},"request_id":"280adfa9-dda2-4b66-b9df-2964a3198315","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835484.8223732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e920ddf54b584a920b8922e277d81b6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e920ddf54b584a920b8922e277d81b6"} gateway-1 | {"time_local":"28/Aug/2024:08:58:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 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":"8e920ddf54b584a920b8922e277d81b6"} device-1 | {"level":"info","message":"GET /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a? 200 17ms","method":"GET","requestID":"8e920ddf54b584a920b8922e277d81b6","responseTime":17,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a?"} device-1 | {"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"874aed9a028ea261957ff8ae90b7b890"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a34f4ba0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:05Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f61cd002-aa4b-4f48-a93a-a983faf82620","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835485.024736} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.945817,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a34f4ba0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","rebac_allow":false,"scope_allow":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":"a34f4ba0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a34f4ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling 200 14ms","method":"POST","requestID":"a34f4ba0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a351e3b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:05Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2050035e-8da6-4c29-b2fc-7c73a4618751","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835485.0433424} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.229173,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a351e3b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","rebac_allow":false,"scope_allow":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":"a351e3b0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a351e3b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling 200 16ms","method":"POST","requestID":"a351e3b0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling"} device-1 | {"device":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"e7deedb0-2485-46f9-9d43-7ed424f9603f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2757082804406966645 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:VzSg\r\na=ice-pwd:icf0TXFayCT09OsTQQIyKe4f\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CE:76:AB:42:46:1A:90:1E:54:36:E6:96:ED:75:BC:71:24:F5:25:B0:1E:7D:8B:0E:A0:85:BB:A0:D5:72:84:27\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1653053531 1 udp 2113937151 6fb0291e-8e57-4f19-b5c6-33417636a62f.local 34177 typ host generation 0 ufrag VzSg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3869962788 1 udp 1677729535 141.24.211.56 34177 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag VzSg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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/e7deedb0-2485-46f9-9d43-7ed424f9603f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7deedb0-2485-46f9-9d43-7ed424f9603f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","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/6978b562-44b7-470f-a7dd-d657ef7dba1d'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a4f33c41c0d07ad9d0b98bbcb94fa80c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a4f33c41c0d07ad9d0b98bbcb94fa80c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d"},{"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/4ab5a744-4293-4e90-81a2-714b25b18f8a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"}}},"level":"info","message":"received a callback","requestID":"a4f33c41c0d07ad9d0b98bbcb94fa80c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"a4f33c41c0d07ad9d0b98bbcb94fa80c","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"a4f33c41c0d07ad9d0b98bbcb94fa80c"} device-1 | {"device":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"e7deedb0-2485-46f9-9d43-7ed424f9603f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"e7deedb0-2485-46f9-9d43-7ed424f9603f","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/e7deedb0-2485-46f9-9d43-7ed424f9603f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7deedb0-2485-46f9-9d43-7ed424f9603f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a0f8eb8eeee938625bb2025748498767","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a0f8eb8eeee938625bb2025748498767","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d"},{"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/4ab5a744-4293-4e90-81a2-714b25b18f8a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"}}},"level":"info","message":"received a callback","requestID":"a0f8eb8eeee938625bb2025748498767"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a47729d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:06Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7deedb0-2485-46f9-9d43-7ed424f9603f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abe9548c-d26e-4367-9389-f0f02dd706d0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835486.9641328} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.361743,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a47729d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","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":"a47729d0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a47729d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f 200 13ms","method":"GET","requestID":"a47729d0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"a0f8eb8eeee938625bb2025748498767","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"a0f8eb8eeee938625bb2025748498767"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a47c32e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:06Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d0a080e-a44f-44dc-b9e6-c7a2179f3e99","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835486.9945261} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.349291,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a47c32e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a47c32e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a47c32e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling 200 9ms","method":"POST","requestID":"a47c32e0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a47de090-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ba71a18-131b-47fa-94b9-201f632fba66","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.0061843} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.436462,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a47de090-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","rebac_allow":false,"scope_allow":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":"a47de090-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a47de090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling 200 9ms","method":"POST","requestID":"a47de090-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/487085b1-7064-4fbb-8572-282a060ec8be","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.666582,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0fa7cd8706876e3bf0b3bb1b4658b264","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/487085b1-7064-4fbb-8572-282a060ec8be","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/487085b1-7064-4fbb-8572-282a060ec8be HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264"} experiment-1 | {"level":"info","message":"GET /experiments/487085b1-7064-4fbb-8572-282a060ec8be 200 11ms","method":"GET","requestID":"0fa7cd8706876e3bf0b3bb1b4658b264","responseTime":11,"status":200,"url":"/experiments/487085b1-7064-4fbb-8572-282a060ec8be"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/487085b1-7064-4fbb-8572-282a060ec8be","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.731688,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a45c5a5c8aabfdacb5c6d089b130adc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Attempting to finish experiment","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a4844930-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.834218,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a4844930-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a4844930-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f","device":"6978b562-44b7-470f-a7dd-d657ef7dba1d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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":"4ab5a744-4293-4e90-81a2-714b25b18f8a","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/e7deedb0-2485-46f9-9d43-7ed424f9603f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7deedb0-2485-46f9-9d43-7ed424f9603f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7deedb0-2485-46f9-9d43-7ed424f9603f': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7deedb0-2485-46f9-9d43-7ed424f9603f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"852edf73-96ec-4c39-af3a-d66c618284c6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.0588906} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d28f9d8c-2e47-45cf-8082-c6907dbb2a5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.0590415} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ef4113bac0a275ba084dc46218e3c16","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ef4113bac0a275ba084dc46218e3c16","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"a4844930-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29c9728412a93cb69c9d488e83a2d17d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/6978b562-44b7-470f-a7dd-d657ef7dba1d"},{"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/4ab5a744-4293-4e90-81a2-714b25b18f8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"}}},"level":"info","message":"received a callback","requestID":"6ef4113bac0a275ba084dc46218e3c16"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"29c9728412a93cb69c9d488e83a2d17d","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/6978b562-44b7-470f-a7dd-d657ef7dba1d"},{"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/4ab5a744-4293-4e90-81a2-714b25b18f8a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"}}},"level":"info","message":"received a callback","requestID":"29c9728412a93cb69c9d488e83a2d17d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a4844930-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f 204 35ms","method":"DELETE","requestID":"a4844930-651b-11ef-b0da-d12cff5a1914","responseTime":35,"status":204,"url":"/peerconnections/e7deedb0-2485-46f9-9d43-7ed424f9603f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/487085b1-7064-4fbb-8572-282a060ec8be"},"level":"info","message":"Successfully finished experiment","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a48c5f80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6978b562-44b7-470f-a7dd-d657ef7dba1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a89e9eaa-e225-40ac-98b4-454fe007d32d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.1005788} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.801623,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a48c5f80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a48c5f80-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a48c5f80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling 200 10ms","method":"POST","requestID":"a48c5f80-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a48e3440-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ab5a744-4293-4e90-81a2-714b25b18f8a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94c26be6-7e53-4170-af35-766c9d8b7f14","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.1126127} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.571468,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a48e3440-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a","object_type":"device","rebac_allow":false,"scope_allow":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":"a48e3440-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487085b1-7064-4fbb-8572-282a060ec8be': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F487085b1-7064-4fbb-8572-282a060ec8be","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"acedb569-2484-4054-a8e8-4720101be87e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.1143513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2d7cfd9-f411-4dff-8cf1-572c62cefa8e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.1147208} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a48e3440-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling 200 10ms","method":"POST","requestID":"a48e3440-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/487085b1-7064-4fbb-8572-282a060ec8be","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/487085b1-7064-4fbb-8572-282a060ec8be 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":"a45c5a5c8aabfdacb5c6d089b130adc7"} experiment-1 | {"level":"info","message":"DELETE /experiments/487085b1-7064-4fbb-8572-282a060ec8be 204 144ms","method":"DELETE","requestID":"a45c5a5c8aabfdacb5c6d089b130adc7","responseTime":144,"status":204,"url":"/experiments/487085b1-7064-4fbb-8572-282a060ec8be"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"4.302","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b98ca8f747d20fd5044ec5709b1883f1"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6280e034b189dbcc9cb07a0b12c3a86"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"e6280e034b189dbcc9cb07a0b12c3a86"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"6ef4113bac0a275ba084dc46218e3c16","responseTime":127,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"29c9728412a93cb69c9d488e83a2d17d","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +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.968","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e668e1b6b98b325288ad9b3836b0f1df"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.195524,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e6280e034b189dbcc9cb07a0b12c3a86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ef4113bac0a275ba084dc46218e3c16"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"29c9728412a93cb69c9d488e83a2d17d"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4ab5a744-4293-4e90-81a2-714b25b18f8a' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"24f95431-d2b2-43d0-bc46-2c4a43d5d45c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.208931} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f720351-0abf-4f8e-88ba-ae41b66ebccc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2141905} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6978b562-44b7-470f-a7dd-d657ef7dba1d' closed"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"13cf448b-ae09-45b0-a14a-cc307b5c45d4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2302473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ecc5b4f-d55e-4371-a30b-922814f8f11f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2303376} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"acab41d6-f869-46db-a4ea-6d2b35c33160","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2348077} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6280e034b189dbcc9cb07a0b12c3a86"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +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":"e6280e034b189dbcc9cb07a0b12c3a86"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"e6280e034b189dbcc9cb07a0b12c3a86","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"21ff9971b856ec825102d74e10f9ac60"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"21ff9971b856ec825102d74e10f9ac60","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21ff9971b856ec825102d74e10f9ac60"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.739306,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"21ff9971b856ec825102d74e10f9ac60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"06899d59-198c-4c8b-a55f-b51d866f5c9b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.259354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6db01c98-8915-4dcc-bb0d-e8536e250ba4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2644117} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"1e2993ee-0906-4fab-ac65-bcd978d17fd4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.275314} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0818a59-7daa-4c85-8617-3692c15a8d8d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2754421} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.275285322Z"}]},"request_id":"0ec7c416-9268-43f4-b429-c13bf9b52504","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.2823672} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21ff9971b856ec825102d74e10f9ac60"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +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":"21ff9971b856ec825102d74e10f9ac60"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"21ff9971b856ec825102d74e10f9ac60","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"27560e4dc6b85a040830e9141181c691"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"27560e4dc6b85a040830e9141181c691","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"27560e4dc6b85a040830e9141181c691"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744254,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"27560e4dc6b85a040830e9141181c691","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27560e4dc6b85a040830e9141181c691","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"e58a669f-9166-4258-8e34-56a7a65e5b51","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.8393247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27560e4dc6b85a040830e9141181c691","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f80b3700-b853-4f3a-8bb0-201c31690344","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.843665} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"27560e4dc6b85a040830e9141181c691","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"1991ffa1-3d8e-46ea-9857-20b9311e74f5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835487.8609858} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"27560e4dc6b85a040830e9141181c691","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"27560e4dc6b85a040830e9141181c691"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8e37b62f-cff7-4e7f-9763-0051917d0724 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"27560e4dc6b85a040830e9141181c691"} device-1 | {"level":"info","message":"PATCH /devices/8e37b62f-cff7-4e7f-9763-0051917d0724 200 32ms","method":"PATCH","requestID":"27560e4dc6b85a040830e9141181c691","responseTime":32,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U","level":"info","message":"auth send jwt","requestID":"c6d024faa949f1cdd6c0060731b0f2d7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c6d024faa949f1cdd6c0060731b0f2d7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c6d024faa949f1cdd6c0060731b0f2d7"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774535,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c6d024faa949f1cdd6c0060731b0f2d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835487,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4N30._peqv2YK3AMH2k4UJ4eGDrVOKHvtsuHjV8qrjAqKz3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c6d024faa949f1cdd6c0060731b0f2d7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c6d024faa949f1cdd6c0060731b0f2d7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c6d024faa949f1cdd6c0060731b0f2d7"} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/websocket 200 13ms","method":"POST","requestID":"c6d024faa949f1cdd6c0060731b0f2d7","responseTime":13,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9fbe8f72039f9345e1160e6ee9036652","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9fbe8f72039f9345e1160e6ee9036652","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/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":"9fbe8f72039f9345e1160e6ee9036652"} device-1 | {"level":"info","message":"OPTIONS /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/websocket 200 1ms","method":"OPTIONS","requestID":"9fbe8f72039f9345e1160e6ee9036652","responseTime":1,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"29695347a5b84fda2601c198a0bb3c85"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"29695347a5b84fda2601c198a0bb3c85","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"29695347a5b84fda2601c198a0bb3c85"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.320355,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"29695347a5b84fda2601c198a0bb3c85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"29695347a5b84fda2601c198a0bb3c85","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"29695347a5b84fda2601c198a0bb3c85"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/websocket 200 35ms","method":"POST","requestID":"29695347a5b84fda2601c198a0bb3c85","responseTime":35,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/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":"29695347a5b84fda2601c198a0bb3c85"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"3de8095503f37a7d26e288e1a378eb32"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3de8095503f37a7d26e288e1a378eb32","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3de8095503f37a7d26e288e1a378eb32"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763165,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3de8095503f37a7d26e288e1a378eb32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3de8095503f37a7d26e288e1a378eb32","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"7b8dc46e-e2f0-4a36-863b-ddff2cd1712d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.3132968} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3de8095503f37a7d26e288e1a378eb32","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3de8095503f37a7d26e288e1a378eb32"} device-1 | {"level":"info","message":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 200 18ms","method":"GET","requestID":"3de8095503f37a7d26e288e1a378eb32","responseTime":18,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 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":"3de8095503f37a7d26e288e1a378eb32"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225609,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.275285322Z"}]},"request_id":"aa8bbe65-f3f3-4423-81ce-fb43cd9c1919","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.3390443} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 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":"6cdc074912b55bf8d9e8a44ce8ca5dc0"} device-1 | {"level":"info","message":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 200 18ms","method":"GET","requestID":"6cdc074912b55bf8d9e8a44ce8ca5dc0","responseTime":18,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ccd95f2c8913c5f3e618f5d476ca715","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.200228,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7ccd95f2c8913c5f3e618f5d476ca715","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ccd95f2c8913c5f3e618f5d476ca715","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to run experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to book experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully booked experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829942,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.400217,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"f9c10b34-0fc2-4194-ba4b-4c6a86517e86","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.408906} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.275285322Z"}]},"request_id":"db0ff63c-502a-4028-8d9a-86b5d7c127a2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.4142175} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 200 17ms","method":"GET","requestID":"a5eba160-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 200 19ms","method":"GET","requestID":"a5ebef80-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Setting up experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully set up experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5f53e50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333831,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully running experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.059335,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"903524c8-0a81-41dd-957e-294fd092c396","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.4695294} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.961847,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5f53e50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","rebac_allow":false,"scope_allow":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":"a5f53e50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5f53e50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"8c71351d-9f1d-4a35-8ad9-67463674828e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.4774597} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling 200 18ms","method":"POST","requestID":"a5f53e50-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.275285322Z"}]},"request_id":"e80c8f6f-c49b-45d8-82b2-3f35545c291b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.4795172} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5f899b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f25e74f6-e7a4-4b7f-911c-cc077f691ae0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.4903038} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"9911b9bd-d07d-447d-b569-77f80e234cb7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.491049} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.734383,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} device-1 | {"level":"info","message":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 200 35ms","method":"GET","requestID":"a5f47b00-651b-11ef-b0da-d12cff5a1914","responseTime":35,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5f899b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 200 34ms","method":"GET","requestID":"a5f4c920-651b-11ef-b0da-d12cff5a1914","responseTime":34,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a5f899b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d34fc9f7-1c3d-4d4a-95de-557d5dd1e0ee","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.491707} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"7ccd95f2c8913c5f3e618f5d476ca715","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5fa6e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5f899b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling 200 16ms","method":"POST","requestID":"a5f899b0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e46fd8e7-724b-4d54-b66d-2987ba4f0853","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5008795} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.979294,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5fa6e70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","rebac_allow":false,"scope_allow":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":"a5fa6e70-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"7ccd95f2c8913c5f3e618f5d476ca715","responseTime":151,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5fa6e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling 200 11ms","method":"POST","requestID":"a5fa6e70-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"f2c0e8a8279fca8512f1fe42e97eab34"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5fc9150-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f2c0e8a8279fca8512f1fe42e97eab34","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f2c0e8a8279fca8512f1fe42e97eab34"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01288f10-b99d-44d0-9274-85b101d2723f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5140977} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.818807,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.480451,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f2c0e8a8279fca8512f1fe42e97eab34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f2c0e8a8279fca8512f1fe42e97eab34","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5fc9150-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5fc9150-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.230220578Z"}]},"request_id":"1c2905a1-0dc8-4f8a-a1df-273e41cef7ba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.519327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2c0e8a8279fca8512f1fe42e97eab34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5fc9150-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling 200 11ms","method":"POST","requestID":"a5fc9150-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Building connection plan","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} 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":"d9155949-19e7-4733-ba8e-f9e0beb85491"},{"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":"a1e3e31c-0e91-4f3f-9fa0-017bb69a58ef"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2bb401d4-bf65-4796-996d-9d8d41e9b91a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} 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/8e37b62f-cff7-4e7f-9763-0051917d0724"},{"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/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f2c0e8a8279fca8512f1fe42e97eab34"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 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":"f2c0e8a8279fca8512f1fe42e97eab34"} device-1 | {"level":"info","message":"GET /devices/8e37b62f-cff7-4e7f-9763-0051917d0724? 200 14ms","method":"GET","requestID":"f2c0e8a8279fca8512f1fe42e97eab34","responseTime":14,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724?"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.885126,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g","level":"info","message":"auth send jwt","requestID":"d469730bc987d9f5db41edca35922614"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d469730bc987d9f5db41edca35922614","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d469730bc987d9f5db41edca35922614"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.921341,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d469730bc987d9f5db41edca35922614","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835489,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ4OX0.Q5NZeY3xeY9aMBug_usA83tKHzlgiyH5IRfrVvPzF8g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d469730bc987d9f5db41edca35922614","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"ee26d149-e138-43dc-8be3-67a0289a9f18","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.539195} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"845e955f-ee0e-4f7c-9d73-3d5f778182e5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5394413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:07.275285322Z"}]},"request_id":"08656b76-e605-4a05-acb4-ed8bb503dad7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5401244} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d469730bc987d9f5db41edca35922614","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d469730bc987d9f5db41edca35922614"} device-1 | {"level":"info","message":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 200 12ms","method":"GET","requestID":"d469730bc987d9f5db41edca35922614","responseTime":12,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455? 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":"d469730bc987d9f5db41edca35922614"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85'","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85'","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a5feb430-651b-11ef-b0da-d12cff5a1914"} 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":"a5feb430-651b-11ef-b0da-d12cff5a1914","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":"a5feb430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","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/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7ccd95f2c8913c5f3e618f5d476ca715"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6080300-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8af567ec-2a98-454f-b7a4-2d65953286b5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5883236} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396295,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a6080300-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","rebac_allow":false,"scope_allow":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":"a6080300-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6080300-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling 200 8ms","method":"POST","requestID":"a6080300-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a60989a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83239f96-b854-46dd-bbda-b7e13d5f9d74","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835489.5979402} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.472725,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a60989a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a60989a0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a60989a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling 200 9ms","method":"POST","requestID":"a60989a0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7259692441038444393 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:392q\r\na=ice-pwd:cNYPxTK75iU6uK+9gAo17Y8e\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D8:EC:29:18:EE:7F:BB:9F:1E:A6:31:CF:D0:B5:DE:E7:31:79:F5:EC:3C:9E:B1:1A:56:8D:02:6C:8B:7A:D3:CA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"2293b0b7-67be-447e-ab5c-29e7ed931e85","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"8e37b62f-cff7-4e7f-9763-0051917d0724","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/2293b0b7-67be-447e-ab5c-29e7ed931e85' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2293b0b7-67be-447e-ab5c-29e7ed931e85","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09da5bbd3caf9d8333f210866c561e85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"09da5bbd3caf9d8333f210866c561e85","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724"},{"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/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"}}},"level":"info","message":"received a callback","requestID":"09da5bbd3caf9d8333f210866c561e85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"09da5bbd3caf9d8333f210866c561e85","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"09da5bbd3caf9d8333f210866c561e85"} device-1 | {"content":{"candidate":"candidate:868055231 1 udp 2113937151 5ea9640f-c137-4d0f-a585-0464cd9a8bab.local 38586 typ host generation 0 ufrag 392q network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3079672512 1 udp 1677729535 141.24.211.56 38586 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 392q network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3835538763 1 udp 33562623 141.24.210.113 54051 typ relay raddr 141.24.211.56 rport 38586 generation 0 ufrag 392q network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"2293b0b7-67be-447e-ab5c-29e7ed931e85","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455'"} device-1 | {"data":{"peerconnection":"2293b0b7-67be-447e-ab5c-29e7ed931e85","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/2293b0b7-67be-447e-ab5c-29e7ed931e85' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2293b0b7-67be-447e-ab5c-29e7ed931e85","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c0c031db6481c9d2abedff3cda4787ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c0c031db6481c9d2abedff3cda4787ee","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724"},{"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/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"}}},"level":"info","message":"received a callback","requestID":"c0c031db6481c9d2abedff3cda4787ee"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a748c060-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2293b0b7-67be-447e-ab5c-29e7ed931e85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7759382-5767-44e6-839c-fb2582474ddb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.6915078} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.915793,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a748c060-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","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":"a748c060-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a748c060-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85 200 9ms","method":"GET","requestID":"a748c060-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"c0c031db6481c9d2abedff3cda4787ee","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"c0c031db6481c9d2abedff3cda4787ee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a74c90f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2049e9de-1f6d-42f3-8bc2-df3b0b276859","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.7158003} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.357482,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a74c90f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a74c90f0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a74c90f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling 200 8ms","method":"POST","requestID":"a74c90f0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a74e1790-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs","level":"info","message":"auth send jwt","requestID":"36b033f1a18aff1bfc3047c18e13fd62"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d70f5fe-b430-438a-bbf0-0a8bd88831c3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.7262154} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"36b033f1a18aff1bfc3047c18e13fd62","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.774076,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","requestID":"36b033f1a18aff1bfc3047c18e13fd62"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a74e1790-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a74e1790-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a74e1790-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling 200 9ms","method":"POST","requestID":"a74e1790-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.875092,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"36b033f1a18aff1bfc3047c18e13fd62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835491,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"36b033f1a18aff1bfc3047c18e13fd62","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","requestID":"36b033f1a18aff1bfc3047c18e13fd62"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36b033f1a18aff1bfc3047c18e13fd62"} experiment-1 | {"level":"info","message":"GET /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1 200 12ms","method":"GET","requestID":"36b033f1a18aff1bfc3047c18e13fd62","responseTime":12,"status":200,"url":"/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs","level":"info","message":"auth send jwt","requestID":"56c4f1027ec9aabc70d0183b636e3934"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"56c4f1027ec9aabc70d0183b636e3934","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","requestID":"56c4f1027ec9aabc70d0183b636e3934"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.698815,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"56c4f1027ec9aabc70d0183b636e3934","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835491,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56c4f1027ec9aabc70d0183b636e3934","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Attempting to finish experiment","requestID":"56c4f1027ec9aabc70d0183b636e3934"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a752f990-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.686707,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a752f990-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835491,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a752f990-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85","device":"ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"8e37b62f-cff7-4e7f-9763-0051917d0724","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":"8e37b62f-cff7-4e7f-9763-0051917d0724","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/2293b0b7-67be-447e-ab5c-29e7ed931e85' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2293b0b7-67be-447e-ab5c-29e7ed931e85","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2293b0b7-67be-447e-ab5c-29e7ed931e85': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2293b0b7-67be-447e-ab5c-29e7ed931e85","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"30595e8c-d18f-41a0-ba0a-f2f82378e765","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.7707205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5650f326-557a-4931-80f8-5ec37fa1334f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.7710445} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"a752f990-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"521829de11fa2d07bceb925a76e036d0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"521829de11fa2d07bceb925a76e036d0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a752f990-651b-11ef-b0da-d12cff5a1914"} 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/8e37b62f-cff7-4e7f-9763-0051917d0724"},{"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/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"}}},"level":"info","message":"received a callback","requestID":"521829de11fa2d07bceb925a76e036d0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4b9884d6a45c8dd72146d1896eab3021","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"DELETE /peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85 204 23ms","method":"DELETE","requestID":"a752f990-651b-11ef-b0da-d12cff5a1914","responseTime":23,"status":204,"url":"/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4b9884d6a45c8dd72146d1896eab3021","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/8e37b62f-cff7-4e7f-9763-0051917d0724"},{"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/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2293b0b7-67be-447e-ab5c-29e7ed931e85"}}},"level":"info","message":"received a callback","requestID":"4b9884d6a45c8dd72146d1896eab3021"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"},"level":"info","message":"Successfully finished experiment","requestID":"56c4f1027ec9aabc70d0183b636e3934"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a7593b20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e37b62f-cff7-4e7f-9763-0051917d0724","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4bc71c2-1943-4d64-b0d7-8052107f3b23","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.7983246} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254056,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a7593b20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e37b62f-cff7-4e7f-9763-0051917d0724","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7593b20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a7593b20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling 200 10ms","method":"POST","requestID":"a7593b20-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/8e37b62f-cff7-4e7f-9763-0051917d0724/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"e219fe09-b5b1-4e84-8eac-7c824ed38b85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.8061397} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f129f7dd-3b04-4f60-9dd3-ef0200cbe704","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.806511} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a75b0fe0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"56c4f1027ec9aabc70d0183b636e3934","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea8f008f-4d07-40d0-ac24-aa1c3ae6b455","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dedbe5de-71eb-4d53-8084-c7e99054e73f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.8110135} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.349427,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a75b0fe0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a75b0fe0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a75b0fe0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling 200 9ms","method":"POST","requestID":"a75b0fe0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1","requestID":"56c4f1027ec9aabc70d0183b636e3934"} experiment-1 | {"level":"info","message":"DELETE /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1 204 130ms","method":"DELETE","requestID":"56c4f1027ec9aabc70d0183b636e3934","responseTime":130,"status":204,"url":"/experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3231","request_time":"3.990","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"65d83d536f5eec81c0624360eab99c13"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4ece59f0-aeb3-4f02-a5c3-42f37cb6fbc1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56c4f1027ec9aabc70d0183b636e3934"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs","level":"info","message":"auth send jwt","requestID":"70ccbac42323915eea64771019056ddb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"70ccbac42323915eea64771019056ddb","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"521829de11fa2d07bceb925a76e036d0","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"521829de11fa2d07bceb925a76e036d0"} device-1 | {"level":"info","message":"postDevices called","requestID":"70ccbac42323915eea64771019056ddb"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2740","request_time":"2.611","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"eda75fb2de49f0d1592171f5ab62aa20"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.029734,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"4b9884d6a45c8dd72146d1896eab3021","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"4b9884d6a45c8dd72146d1896eab3021"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"70ccbac42323915eea64771019056ddb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835491,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","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/8e37b62f-cff7-4e7f-9763-0051917d0724' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ea8f008f-4d07-40d0-ac24-aa1c3ae6b455' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8d01df92-ba7d-4bdc-b1c0-ec2cd6773e73","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9269967} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1c597b9-6a42-49db-8043-1773f86cc08e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.932073} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"7b11dbc3-2816-4bcf-b88a-dbcd186644ec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9432552} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d9e676c-d3ed-47b7-994b-64348f9e885e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9435265} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"e6f3f5d9-0228-4580-8ce6-1aaa2a59a023","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9494016} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"70ccbac42323915eea64771019056ddb"} gateway-1 | {"time_local":"28/Aug/2024:08:58:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.078","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70ccbac42323915eea64771019056ddb"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"70ccbac42323915eea64771019056ddb","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs","level":"info","message":"auth send jwt","requestID":"dc69e073fe8c1ae787ca8dc487fd6485"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dc69e073fe8c1ae787ca8dc487fd6485"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.643885,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"dc69e073fe8c1ae787ca8dc487fd6485","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835491,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5MX0.H-R7dq-2RWHssbQFk9bRG818p3vKV0hf-ra1YfgTEjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f3dd0145-1b7e-4dad-a1fe-4719ee34c49b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9801173} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"588a7df8-1970-449a-b198-d7a6854ac5be","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.9854953} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"459c6e33-55f4-44b0-92d6-052751bcb71a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.995106} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7cb0879-ffcb-4a91-a930-d733232d6d61","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.995422} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.995084769Z"}]},"request_id":"5b114d20-e602-4c96-a6d5-1f157190e62c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835491.999799} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dc69e073fe8c1ae787ca8dc487fd6485"} gateway-1 | {"time_local":"28/Aug/2024:08:58:12 +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":"dc69e073fe8c1ae787ca8dc487fd6485"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"dc69e073fe8c1ae787ca8dc487fd6485","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Mn0.dFL-p_gv1mFD3h7lQOpJ3a1N3ScHL09HJ0CHlLNw2nA","level":"info","message":"auth send jwt","requestID":"f658bd94e762b57585c546cee3006f9f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f658bd94e762b57585c546cee3006f9f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f658bd94e762b57585c546cee3006f9f"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:12Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738193,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f658bd94e762b57585c546cee3006f9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835492,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Mn0.dFL-p_gv1mFD3h7lQOpJ3a1N3ScHL09HJ0CHlLNw2nA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f658bd94e762b57585c546cee3006f9f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"2e3f8e04-f606-4448-9d62-62bdd8caa378","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835492.5818632} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f658bd94e762b57585c546cee3006f9f","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf9fb728-6868-44d3-8f82-1620218ace83","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835492.586543} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f658bd94e762b57585c546cee3006f9f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"28f7f52b-25cd-4bde-86af-ead19f3985c7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835492.5994666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f658bd94e762b57585c546cee3006f9f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f658bd94e762b57585c546cee3006f9f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/00cb577f-fe91-44b1-8524-4fdee5495518 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f658bd94e762b57585c546cee3006f9f"} device-1 | {"level":"info","message":"PATCH /devices/00cb577f-fe91-44b1-8524-4fdee5495518 200 28ms","method":"PATCH","requestID":"f658bd94e762b57585c546cee3006f9f","responseTime":28,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Mn0.dFL-p_gv1mFD3h7lQOpJ3a1N3ScHL09HJ0CHlLNw2nA","level":"info","message":"auth send jwt","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:12Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.350449,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a0ebaea8daccf5534f8dcbf510bc54c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835492,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Mn0.dFL-p_gv1mFD3h7lQOpJ3a1N3ScHL09HJ0CHlLNw2nA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/websocket 200 15ms","method":"POST","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0","responseTime":15,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a0ebaea8daccf5534f8dcbf510bc54c0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0bbc0283e431dc8c9c0056657c16a50a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0bbc0283e431dc8c9c0056657c16a50a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/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":"0bbc0283e431dc8c9c0056657c16a50a"} device-1 | {"level":"info","message":"OPTIONS /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/websocket 200 0ms","method":"OPTIONS","requestID":"0bbc0283e431dc8c9c0056657c16a50a","responseTime":0,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5M30.9s6Rm7a-iw5MD95kQWXAWyJrgWi66J8eDFpKD4RI2ek","level":"info","message":"auth send jwt","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960901,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835493,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5M30.9s6Rm7a-iw5MD95kQWXAWyJrgWi66J8eDFpKD4RI2ek"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc"} gateway-1 | {"time_local":"28/Aug/2024:08:58:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/websocket 200 45ms","method":"POST","requestID":"3c7cab4091e1481d6d0d8fb8ffa171cc","responseTime":45,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc","level":"info","message":"auth send jwt","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71908,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e55b65e05eeee4c5357c8d47b2a1ea34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"c7c87129-0fc5-49f0-b927-3232bdbfa3a4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.0202425} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34"} gateway-1 | {"time_local":"28/Aug/2024:08:58:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? 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":"e55b65e05eeee4c5357c8d47b2a1ea34"} device-1 | {"level":"info","message":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? 200 12ms","method":"GET","requestID":"e55b65e05eeee4c5357c8d47b2a1ea34","responseTime":12,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc","level":"info","message":"auth send jwt","requestID":"48d70a1f4cea4e76a0378a87e53b76db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48d70a1f4cea4e76a0378a87e53b76db","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48d70a1f4cea4e76a0378a87e53b76db"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705963,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"48d70a1f4cea4e76a0378a87e53b76db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48d70a1f4cea4e76a0378a87e53b76db","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.995084769Z"}]},"request_id":"484f7c67-8366-492f-b676-f2a2b798f8c7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.0385704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48d70a1f4cea4e76a0378a87e53b76db","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48d70a1f4cea4e76a0378a87e53b76db"} gateway-1 | {"time_local":"28/Aug/2024:08:58:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? 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":"48d70a1f4cea4e76a0378a87e53b76db"} device-1 | {"level":"info","message":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? 200 11ms","method":"GET","requestID":"48d70a1f4cea4e76a0378a87e53b76db","responseTime":12,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc","level":"info","message":"auth send jwt","requestID":"9c9c939be274cf2b6d83412fb76665e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c9c939be274cf2b6d83412fb76665e7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9c9c939be274cf2b6d83412fb76665e7"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.716733,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9c9c939be274cf2b6d83412fb76665e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c9c939be274cf2b6d83412fb76665e7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to run experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to book experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully booked experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72243,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664041,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"aef5332a-743f-462c-a483-1e1c66133b08","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.196655} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.995084769Z"}]},"request_id":"7c11537c-8353-49ff-8fcf-a6d3b9afb2dc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.1974487} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? 200 13ms","method":"GET","requestID":"a8c686c0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? 200 12ms","method":"GET","requestID":"a8c6d4e0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Setting up experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully set up experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully running experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8e188d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.149591,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107366,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93586330-7f1c-4281-aaeb-0cc4286f7138","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3716316} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.705091,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e188d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8e188d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8e188d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling 200 11ms","method":"POST","requestID":"a8e188d0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"56c74e0b-b862-4556-bb2d-e0a8aa5f0044","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3755066} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.995084769Z"}]},"request_id":"9590a893-6f7b-43dc-97cc-c02ada8f6974","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.376505} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8e3d2c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? 200 21ms","method":"GET","requestID":"a8e113a0-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? 200 21ms","method":"GET","requestID":"a8e13ab0-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74bfe110-512b-40e6-9453-8c972485f362","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3856075} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.126419,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8e4e430-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e3d2c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","rebac_allow":false,"scope_allow":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":"a8e3d2c0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8e3d2c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling 200 11ms","method":"POST","requestID":"a8e3d2c0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d01464db-c922-4a09-a9f7-1e00add75fc2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3924484} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.270525,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e4e430-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","rebac_allow":false,"scope_allow":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":"a8e4e430-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8e4e430-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling 200 10ms","method":"POST","requestID":"a8e4e430-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffe5855da-be75-4920-b23f-0bb49d7c1978#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffe5855da-be75-4920-b23f-0bb49d7c1978","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6a9ce6ec-2682-425e-9881-332676a5d58f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3984745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"409bddd5-7e2e-45ec-8111-448da339ea2d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.3988125} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8e6b8f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"9c9c939be274cf2b6d83412fb76665e7","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da657c64-6783-479b-b0a1-c8e395c25a03","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.4039657} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.259355,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e6b8f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","rebac_allow":false,"scope_allow":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":"a8e6b8f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9c9c939be274cf2b6d83412fb76665e7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.363","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 360ms","method":"POST","requestID":"9c9c939be274cf2b6d83412fb76665e7","responseTime":360,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8e6b8f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling 200 10ms","method":"POST","requestID":"a8e6b8f0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Building connection plan","requestID":"9c9c939be274cf2b6d83412fb76665e7"} 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":"54bcec7c-62cc-40c6-a881-304ce4481cf2"},{"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":"91fadba1-0a03-4f28-8740-8ec39bd68c41"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5eed4c7d-5463-49e0-af82-c5ce652d5ac7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9c9c939be274cf2b6d83412fb76665e7"} 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/ee74cfce-67c3-462f-8f4c-271cb23e2fab"},{"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/00cb577f-fe91-44b1-8524-4fdee5495518"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9c9c939be274cf2b6d83412fb76665e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc","level":"info","message":"auth send jwt","requestID":"1723cd9d07ec8a8ee603072a2639a37f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1723cd9d07ec8a8ee603072a2639a37f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1723cd9d07ec8a8ee603072a2639a37f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.744119,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923563,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1723cd9d07ec8a8ee603072a2639a37f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1723cd9d07ec8a8ee603072a2639a37f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.943233354Z"}]},"request_id":"9e26c86e-9bd3-407e-aedd-6b091131fec9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.427953} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1723cd9d07ec8a8ee603072a2639a37f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"db1773ce-907d-4c89-8990-1ad9a36e1d68","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.4330688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73b4f000-8a38-4895-87b0-6422fb35fabd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.4333909} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1723cd9d07ec8a8ee603072a2639a37f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1723cd9d07ec8a8ee603072a2639a37f"} device-1 | {"level":"info","message":"GET /devices/00cb577f-fe91-44b1-8524-4fdee5495518? 200 23ms","method":"GET","requestID":"1723cd9d07ec8a8ee603072a2639a37f","responseTime":23,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc","level":"info","message":"auth send jwt","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875546,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e4330a47eb2e5a6a4f64b4c18c53f752","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835494,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5NH0.Z_wp6gYIgsdZEx2wC0iKuwHeuaCDLqJz_hi7rveSEtc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:11.995084769Z"}]},"request_id":"0a49fb33-9cb2-4b7c-927d-78f76f03ecef","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.4538271} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1'","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1'","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 51ms","method":"POST","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914","responseTime":51,"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":"e4330a47eb2e5a6a4f64b4c18c53f752"} gateway-1 | {"time_local":"28/Aug/2024:08:58:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752"} device-1 | {"level":"info","message":"GET /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab? 200 20ms","method":"GET","requestID":"e4330a47eb2e5a6a4f64b4c18c53f752","responseTime":20,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a8e8dbd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","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} device-1 | {"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9c9c939be274cf2b6d83412fb76665e7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8f97da0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7dae1af7-596c-4c21-aaf1-3a46a7ca9525","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.5263085} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526893,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8f97da0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8f97da0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8f97da0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling 200 9ms","method":"POST","requestID":"a8f97da0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8fb0440-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df4b28f2-0364-4713-a167-2816eeab8de6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835494.5370078} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.339536,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8fb0440-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","rebac_allow":false,"scope_allow":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":"a8fb0440-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8fb0440-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling 200 8ms","method":"POST","requestID":"a8fb0440-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3803599497821780360 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:uQCj\r\na=ice-pwd:XNkWYSVF5X3LGSrUv5c0GRcp\r\na=ice-options:trickle\r\na=fingerprint:sha-256 90:14:AA:0A:50:81:14:76:A6:31:EE:E6:85:12:F2:74:6E:D8:47:82:02:88:D0:F0:E4:1E:A1:8D:AF:6A:4A:32\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:406034430 1 udp 2113937151 5838fd45-6c2c-484b-9934-f00a93125314.local 59581 typ host generation 0 ufrag uQCj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:980228467 1 udp 1677729535 141.24.211.56 59581 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag uQCj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","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/64033df4-4619-4758-a936-8b62105716d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab'"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"auth error No token found","requestID":"918f00d79dbd93a46c3b6369c0e5e3fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"918f00d79dbd93a46c3b6369c0e5e3fb","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab"},{"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/00cb577f-fe91-44b1-8524-4fdee5495518"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1"}}},"level":"info","message":"received a callback","requestID":"918f00d79dbd93a46c3b6369c0e5e3fb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"918f00d79dbd93a46c3b6369c0e5e3fb","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"918f00d79dbd93a46c3b6369c0e5e3fb"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","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/64033df4-4619-4758-a936-8b62105716d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9205f5315a5ca9094996bb9fb962354c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9205f5315a5ca9094996bb9fb962354c","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/ee74cfce-67c3-462f-8f4c-271cb23e2fab"},{"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/00cb577f-fe91-44b1-8524-4fdee5495518"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1"}}},"level":"info","message":"received a callback","requestID":"9205f5315a5ca9094996bb9fb962354c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"aa3a3b00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64033df4-4619-4758-a936-8b62105716d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"726a5fc2-170c-4823-bbcb-c967624f89f6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.6287496} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.376223,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa3a3b00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","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":"aa3a3b00-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"aa3a3b00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/64033df4-4619-4758-a936-8b62105716d1 200 12ms","method":"GET","requestID":"aa3a3b00-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/peerconnections/64033df4-4619-4758-a936-8b62105716d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"9205f5315a5ca9094996bb9fb962354c","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"9205f5315a5ca9094996bb9fb962354c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa400760-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89b79290-cba3-4552-991f-a6b698d9daf0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.667076} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY","level":"info","message":"auth send jwt","requestID":"9c1b23150a4e78a06d3d8739b631d262"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c1b23150a4e78a06d3d8739b631d262","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451616,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa400760-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa400760-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","requestID":"9c1b23150a4e78a06d3d8739b631d262"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa400760-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling 200 10ms","method":"POST","requestID":"aa400760-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.896921,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9c1b23150a4e78a06d3d8739b631d262","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835496,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c1b23150a4e78a06d3d8739b631d262","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa41dc20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68e0aa42-4502-4b8c-ae37-b9c087b55dd8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.6789706} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.718435,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa41dc20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","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/fe5855da-be75-4920-b23f-0bb49d7c1978","requestID":"9c1b23150a4e78a06d3d8739b631d262"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aa41dc20-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c1b23150a4e78a06d3d8739b631d262"} experiment-1 | {"level":"info","message":"GET /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978 200 13ms","method":"GET","requestID":"9c1b23150a4e78a06d3d8739b631d262","responseTime":13,"status":200,"url":"/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa41dc20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling 200 10ms","method":"POST","requestID":"aa41dc20-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY","level":"info","message":"auth send jwt","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4483aaaa3dccbe45333b1ab41cb9925","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.757494,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b4483aaaa3dccbe45333b1ab41cb9925","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835496,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b4483aaaa3dccbe45333b1ab41cb9925","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Attempting to finish experiment","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"aa45acb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.803336,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa45acb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835496,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aa45acb0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1","device":"ee74cfce-67c3-462f-8f4c-271cb23e2fab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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":"00cb577f-fe91-44b1-8524-4fdee5495518","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/64033df4-4619-4758-a936-8b62105716d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"00cb577f-fe91-44b1-8524-4fdee5495518","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"}} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64033df4-4619-4758-a936-8b62105716d1': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64033df4-4619-4758-a936-8b62105716d1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"946f9e96-4af9-4e52-90cb-729f0a39354c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.7146637} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf6bca768f437ddd8bdedda407958e6c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d3bcb0b-0352-4e87-be88-7d607efb7351","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.7150443} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bf6bca768f437ddd8bdedda407958e6c","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/ee74cfce-67c3-462f-8f4c-271cb23e2fab"},{"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/00cb577f-fe91-44b1-8524-4fdee5495518"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1"}}},"level":"info","message":"received a callback","requestID":"bf6bca768f437ddd8bdedda407958e6c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e16d50f21dad38769cffaa6226da32ba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"aa45acb0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e16d50f21dad38769cffaa6226da32ba","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/ee74cfce-67c3-462f-8f4c-271cb23e2fab"},{"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/00cb577f-fe91-44b1-8524-4fdee5495518"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/64033df4-4619-4758-a936-8b62105716d1"}}},"level":"info","message":"received a callback","requestID":"e16d50f21dad38769cffaa6226da32ba"} device-1 | {"data":{"peerconnection":"64033df4-4619-4758-a936-8b62105716d1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"aa45acb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/64033df4-4619-4758-a936-8b62105716d1 204 63ms","method":"DELETE","requestID":"aa45acb0-651b-11ef-b0da-d12cff5a1914","responseTime":63,"status":204,"url":"/peerconnections/64033df4-4619-4758-a936-8b62105716d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"},"level":"info","message":"Successfully finished experiment","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa52cc10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee74cfce-67c3-462f-8f4c-271cb23e2fab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc9c70e7-43cf-4194-b5e4-360ff18d3c02","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.7903242} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.21143,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa52cc10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab","object_type":"device","rebac_allow":false,"scope_allow":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":"aa52cc10-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa52cc10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling 200 9ms","method":"POST","requestID":"aa52cc10-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa5479c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb577f-fe91-44b1-8524-4fdee5495518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dec63663-7b8e-40da-8f4b-2c667c24c04b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.8006506} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.20399,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aa5479c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb577f-fe91-44b1-8524-4fdee5495518","object_type":"device","rebac_allow":false,"scope_allow":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":"aa5479c0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa5479c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling 200 8ms","method":"POST","requestID":"aa5479c0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/00cb577f-fe91-44b1-8524-4fdee5495518/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffe5855da-be75-4920-b23f-0bb49d7c1978': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffe5855da-be75-4920-b23f-0bb49d7c1978","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"2fa8de7a-f63b-4688-aa1f-c6ac0b12d729","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.810439} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88003507-d06a-4ebb-b11f-0c033503989a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.8106503} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"b4483aaaa3dccbe45333b1ab41cb9925","responseTime":28,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.229","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4483aaaa3dccbe45333b1ab41cb9925"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"4.291","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7140505bdd5a8fb8ad6b559fe57b6fc8"} experiment-1 | {"level":"info","message":"DELETE /experiments/fe5855da-be75-4920-b23f-0bb49d7c1978 204 226ms","method":"DELETE","requestID":"b4483aaaa3dccbe45333b1ab41cb9925","responseTime":226,"status":204,"url":"/experiments/fe5855da-be75-4920-b23f-0bb49d7c1978"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf6bca768f437ddd8bdedda407958e6c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch","requestID":"e16d50f21dad38769cffaa6226da32ba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 200ms","method":"POST","requestID":"bf6bca768f437ddd8bdedda407958e6c","responseTime":200,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY","level":"info","message":"auth send jwt","requestID":"293d0927b78c000b21225aee81bd2b21"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 199ms","method":"POST","requestID":"e16d50f21dad38769cffaa6226da32ba","responseTime":199,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"293d0927b78c000b21225aee81bd2b21","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:16 +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.934","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19114547ced2d438e342b479986f27dd"} device-1 | {"level":"info","message":"postDevices called","requestID":"293d0927b78c000b21225aee81bd2b21"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.889101,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"293d0927b78c000b21225aee81bd2b21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835496,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5Nn0.RT09v1OvQbuiIg8AWv2N2sA6BSfchJ8lB4Z8qhDh2ZY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","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/00cb577f-fe91-44b1-8524-4fdee5495518' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a291cce7-8597-4e2e-b8a8-77cc6b5f3231","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.9628935} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45b0e197-abdc-4013-8f0a-a0d4a068ec03","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.9679484} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ee74cfce-67c3-462f-8f4c-271cb23e2fab' 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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f6da524-5899-4bda-ba7d-1ae16aa09342","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.9841259} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"5ccd722c-356e-44e0-8f3b-136a085e553c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.9845412} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"babada1b-9e7f-440d-9a39-23e1f5e7510f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835496.9932375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"293d0927b78c000b21225aee81bd2b21"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.085","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"293d0927b78c000b21225aee81bd2b21"} device-1 | {"level":"info","message":"POST /devices? 201 74ms","method":"POST","requestID":"293d0927b78c000b21225aee81bd2b21","responseTime":74,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"5b02826e78e9007d5128621547c05fa3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b02826e78e9007d5128621547c05fa3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5b02826e78e9007d5128621547c05fa3"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.667508,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5b02826e78e9007d5128621547c05fa3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7a567af5-7449-4ead-b0fc-b8c63d65ab2a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.0393732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96462f7a-9044-4ae5-a975-9aae87664bf5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.0435107} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"03d72614-bfe7-43b2-977b-a1399c659b45","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.0565963} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dd0b716-ce8e-46c4-942c-5f7a81860f94","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.0568995} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"b5c011d4-d8ed-4b3e-8b22-03ef989d9f15","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.06074} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5b02826e78e9007d5128621547c05fa3"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b02826e78e9007d5128621547c05fa3"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"5b02826e78e9007d5128621547c05fa3","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929237,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"a19fcb3c-ec5a-4749-aa6b-4c4e9885d89b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.63613} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"e85443a241dc468febe097c9d6ff4e68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e85443a241dc468febe097c9d6ff4e68","responseTime":3,"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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50618b77-f569-48f2-80f8-7b9107ac9907","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.64132} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e85443a241dc468febe097c9d6ff4e68"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686965,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e85443a241dc468febe097c9d6ff4e68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e85443a241dc468febe097c9d6ff4e68","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"757eab83-deb6-4c4f-a103-ba06d6a831d3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.6675} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"45400f89-90a9-441c-bc39-fb3b612f7a5d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.6686132} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e85443a241dc468febe097c9d6ff4e68","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4 200 44ms","method":"PATCH","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1","responseTime":44,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f9fa6bf7647aa43425640d2aaf7d7fe1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"907569017d96f7a38112b93d4e56bda4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"907569017d96f7a38112b93d4e56bda4","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70ebfec6-564c-42b9-a0f5-f26a803af6a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.67545} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e85443a241dc468febe097c9d6ff4e68","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"907569017d96f7a38112b93d4e56bda4"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.635959,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"907569017d96f7a38112b93d4e56bda4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"907569017d96f7a38112b93d4e56bda4","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"a912c8b2-6d32-43e2-bd9d-6521afc2cd74","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.690585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e85443a241dc468febe097c9d6ff4e68","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e85443a241dc468febe097c9d6ff4e68"} device-1 | {"level":"info","message":"PATCH /devices/9bc41d31-351e-4d66-a666-517c67d323f5 200 50ms","method":"PATCH","requestID":"e85443a241dc468febe097c9d6ff4e68","responseTime":50,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9bc41d31-351e-4d66-a666-517c67d323f5 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.055","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e85443a241dc468febe097c9d6ff4e68"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"e3a8af533fd070f559039508212483ff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e3a8af533fd070f559039508212483ff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e3a8af533fd070f559039508212483ff"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652309,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e3a8af533fd070f559039508212483ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e3a8af533fd070f559039508212483ff","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"907569017d96f7a38112b93d4e56bda4"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"907569017d96f7a38112b93d4e56bda4"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/websocket 200 38ms","method":"POST","requestID":"907569017d96f7a38112b93d4e56bda4","responseTime":38,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e3a8af533fd070f559039508212483ff"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e3a8af533fd070f559039508212483ff"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/websocket 200 26ms","method":"POST","requestID":"e3a8af533fd070f559039508212483ff","responseTime":26,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"c7f7879cf4ba21532e0692cc96e499a0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c7f7879cf4ba21532e0692cc96e499a0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7f7879cf4ba21532e0692cc96e499a0"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700654,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c7f7879cf4ba21532e0692cc96e499a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7f7879cf4ba21532e0692cc96e499a0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"c688b587-d7df-43ae-aa76-711e04e66bde","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.7569494} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c7f7879cf4ba21532e0692cc96e499a0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7f7879cf4ba21532e0692cc96e499a0"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 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":"c7f7879cf4ba21532e0692cc96e499a0"} device-1 | {"level":"info","message":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 200 10ms","method":"GET","requestID":"c7f7879cf4ba21532e0692cc96e499a0","responseTime":10,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"ce4aaf7fff5f1c522404fb00e98127fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ce4aaf7fff5f1c522404fb00e98127fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4aaf7fff5f1c522404fb00e98127fd"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628245,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ce4aaf7fff5f1c522404fb00e98127fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce4aaf7fff5f1c522404fb00e98127fd","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"f27eadae-1d7f-40b6-bb29-4ac4588c0a8e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.7721558} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce4aaf7fff5f1c522404fb00e98127fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4aaf7fff5f1c522404fb00e98127fd"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 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":"ce4aaf7fff5f1c522404fb00e98127fd"} device-1 | {"level":"info","message":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 200 10ms","method":"GET","requestID":"ce4aaf7fff5f1c522404fb00e98127fd","responseTime":10,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"86f8ecde6c2419f9aabcc96c937d0493","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.671222,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"86f8ecde6c2419f9aabcc96c937d0493","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"86f8ecde6c2419f9aabcc96c937d0493","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to run experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to book experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully booked experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906825,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752166,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"d77ac526-eba6-4abe-9e27-d340985e15b0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.822775} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"6424e95c-c578-47f1-8831-f84811f64f6b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.8246672} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 200 16ms","method":"GET","requestID":"aaefa850-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 200 15ms","method":"GET","requestID":"aaeff670-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Setting up experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully set up experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aafbdd50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37732","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.42203,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233129,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully running experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2c7b13e-1e3e-4f67-ba38-00ffb5df2b1d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9043367} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"2e8a9b87-7dcd-4aeb-b7ad-c66557f166e8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.906286} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.052656,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"aafbdd50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","rebac_allow":false,"scope_allow":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":"aafbdd50-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"70cccf6f-ec0b-4cdc-aeaa-015ed4b26011","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.907601} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aafbdd50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling 200 22ms","method":"POST","requestID":"aafbdd50-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 200 27ms","method":"GET","requestID":"aafb6820-651b-11ef-b0da-d12cff5a1914","responseTime":27,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f1e3112-4ff5-4b85-90af-584ca0749b2d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f1e3112-4ff5-4b85-90af-584ca0749b2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e74f77cf-4a4c-444d-8f52-73452263638e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9176273} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40e1583b-564a-48ce-a743-f12431a425a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.918602} device-1 | {"level":"info","message":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 200 28ms","method":"GET","requestID":"aafb8f30-651b-11ef-b0da-d12cff5a1914","responseTime":28,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab002310-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"86f8ecde6c2419f9aabcc96c937d0493","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab007130-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"462e8b55-6585-4fe3-b0f9-d6c18ff812ea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9273217} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.745506,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab002310-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","rebac_allow":false,"scope_allow":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":"ab002310-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a15d017-7c80-4919-b29a-d9cc5552232a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.932848} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.395856,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab007130-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","rebac_allow":false,"scope_allow":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":"ab007130-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab002310-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling 200 15ms","method":"POST","requestID":"ab002310-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"86f8ecde6c2419f9aabcc96c937d0493","responseTime":158,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"bf127e2c2e20d488b7f085132fbd89bb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf127e2c2e20d488b7f085132fbd89bb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf127e2c2e20d488b7f085132fbd89bb"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab007130-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984868,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling 200 21ms","method":"POST","requestID":"ab007130-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf127e2c2e20d488b7f085132fbd89bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bf127e2c2e20d488b7f085132fbd89bb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab0441c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:16.984515519Z"}]},"request_id":"27908acb-b80c-4002-b3b4-d40fa6bf0546","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9495525} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf127e2c2e20d488b7f085132fbd89bb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf127e2c2e20d488b7f085132fbd89bb"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 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":"bf127e2c2e20d488b7f085132fbd89bb"} device-1 | {"level":"info","message":"GET /devices/9bc41d31-351e-4d66-a666-517c67d323f5? 200 14ms","method":"GET","requestID":"bf127e2c2e20d488b7f085132fbd89bb","responseTime":14,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3fcac890-1f67-44e4-9806-e350d549dc1c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9545166} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.111934,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab0441c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","rebac_allow":false,"scope_allow":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":"ab0441c0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA","level":"info","message":"auth send jwt","requestID":"295c798bf371b2c5e491952ed03e113f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"295c798bf371b2c5e491952ed03e113f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab0441c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling 200 13ms","method":"POST","requestID":"ab0441c0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"295c798bf371b2c5e491952ed03e113f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Building connection plan","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} 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":"0b425520-2e32-4eb6-bf00-14ffbf2a1c2a"},{"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":"c0443750-137a-471c-9795-a90993943c7a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c39d835f-3fc3-40f5-aa2a-6bf949b32bd4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} 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/9bc41d31-351e-4d66-a666-517c67d323f5"},{"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/29d13a8b-a479-40fa-a7b8-036ecba576d4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009546,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"295c798bf371b2c5e491952ed03e113f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"295c798bf371b2c5e491952ed03e113f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.923491,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835497,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTQ5N30.jrczOVkTxx3ey6OPVbqPcjJnXe7rDa9bpdKUNn_PVRA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:17.056575197Z"}]},"request_id":"fbe1f269-db89-4691-a463-c386f8935100","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.970637} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"295c798bf371b2c5e491952ed03e113f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"295c798bf371b2c5e491952ed03e113f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 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":"295c798bf371b2c5e491952ed03e113f"} device-1 | {"level":"info","message":"GET /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4? 200 14ms","method":"GET","requestID":"295c798bf371b2c5e491952ed03e113f","responseTime":14,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"90490535-0b59-4a49-b508-3f6eb61c0c08","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9806395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19c4e964-67ff-4c3f-bdd0-9a37b0f5848f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835497.9809954} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70'","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70'","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} 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":"ab06d9d0-651b-11ef-b0da-d12cff5a1914","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":"ab06d9d0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"86f8ecde6c2419f9aabcc96c937d0493"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab10ebf0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:18Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68a99677-22cb-4e2f-bc43-c29e30449ab1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835498.0364397} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.79004,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab10ebf0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab10ebf0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab10ebf0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling 200 10ms","method":"POST","requestID":"ab10ebf0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab12c0b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:18Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5e18058-de2c-4e80-a623-d90b18ec6035","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835498.0482697} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.343672,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ab12c0b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","rebac_allow":false,"scope_allow":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":"ab12c0b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab12c0b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling 200 10ms","method":"POST","requestID":"ab12c0b0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling"} device-1 | {"device":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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/0e921977-9d0e-42fe-bfdb-37c63de45c70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fdcd1f1ce31a8d2c780a5605313d4e0e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"fdcd1f1ce31a8d2c780a5605313d4e0e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5"},{"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/29d13a8b-a479-40fa-a7b8-036ecba576d4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"}}},"level":"info","message":"received a callback","requestID":"fdcd1f1ce31a8d2c780a5605313d4e0e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"fdcd1f1ce31a8d2c780a5605313d4e0e","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"fdcd1f1ce31a8d2c780a5605313d4e0e"} device-1 | {"device":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0e921977-9d0e-42fe-bfdb-37c63de45c70","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/0e921977-9d0e-42fe-bfdb-37c63de45c70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2560f5d4f144eb66b45a0fb96e266569","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2560f5d4f144eb66b45a0fb96e266569","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5"},{"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/29d13a8b-a479-40fa-a7b8-036ecba576d4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"}}},"level":"info","message":"received a callback","requestID":"2560f5d4f144eb66b45a0fb96e266569"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ac51a950-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e921977-9d0e-42fe-bfdb-37c63de45c70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46a5f318-d1ac-409d-a3da-ac8536cc9c20","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.1372478} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.350572,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac51a950-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70","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":"ac51a950-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ac51a950-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70 200 11ms","method":"GET","requestID":"ac51a950-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"2560f5d4f144eb66b45a0fb96e266569","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"2560f5d4f144eb66b45a0fb96e266569"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac568b50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"badbbdde-fcf2-427d-9a28-7596a465c0c0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.1696804} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.223889,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac568b50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","rebac_allow":false,"scope_allow":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":"ac568b50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ac568b50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling 200 8ms","method":"POST","requestID":"ac568b50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac5811f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"caaeb67b-319f-419c-baab-937d8b1e1c73","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.1793625} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.193106,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac5811f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac5811f0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ac5811f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling 200 8ms","method":"POST","requestID":"ac5811f0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8","level":"info","message":"auth send jwt","requestID":"6e0030b470f32ea32030f27c17db3a43"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e0030b470f32ea32030f27c17db3a43","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","requestID":"6e0030b470f32ea32030f27c17db3a43"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.696901,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6e0030b470f32ea32030f27c17db3a43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835500,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6e0030b470f32ea32030f27c17db3a43","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","requestID":"6e0030b470f32ea32030f27c17db3a43"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e0030b470f32ea32030f27c17db3a43"} experiment-1 | {"level":"info","message":"GET /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d 200 10ms","method":"GET","requestID":"6e0030b470f32ea32030f27c17db3a43","responseTime":10,"status":200,"url":"/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8","level":"info","message":"auth send jwt","requestID":"8bfd931a076ea902957946473b090c17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8bfd931a076ea902957946473b090c17","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","requestID":"8bfd931a076ea902957946473b090c17"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.722989,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8bfd931a076ea902957946473b090c17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835500,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8bfd931a076ea902957946473b090c17","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Attempting to finish experiment","requestID":"8bfd931a076ea902957946473b090c17"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ac5d6920-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.955426,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac5d6920-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835500,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ac5d6920-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"9bc41d31-351e-4d66-a666-517c67d323f5","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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":"29d13a8b-a479-40fa-a7b8-036ecba576d4","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/0e921977-9d0e-42fe-bfdb-37c63de45c70' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e921977-9d0e-42fe-bfdb-37c63de45c70","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e921977-9d0e-42fe-bfdb-37c63de45c70': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e921977-9d0e-42fe-bfdb-37c63de45c70","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"2811cd3f-4657-4fc2-9db7-858005d3f0a3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.2244565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"689d2ec4-859e-4277-9a72-b53cf7a180e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.2246766} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb05009fe6ba1fb4c6194d49349d3604","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ac5d6920-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb05009fe6ba1fb4c6194d49349d3604","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d2643b6b6b32df2d880736b21f9c939","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/9bc41d31-351e-4d66-a666-517c67d323f5"},{"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/29d13a8b-a479-40fa-a7b8-036ecba576d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"}}},"level":"info","message":"received a callback","requestID":"fb05009fe6ba1fb4c6194d49349d3604"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d2643b6b6b32df2d880736b21f9c939","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/9bc41d31-351e-4d66-a666-517c67d323f5"},{"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/29d13a8b-a479-40fa-a7b8-036ecba576d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"}}},"level":"info","message":"received a callback","requestID":"2d2643b6b6b32df2d880736b21f9c939"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ac5d6920-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70 204 56ms","method":"DELETE","requestID":"ac5d6920-651b-11ef-b0da-d12cff5a1914","responseTime":56,"status":204,"url":"/peerconnections/0e921977-9d0e-42fe-bfdb-37c63de45c70"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"},"level":"info","message":"Successfully finished experiment","requestID":"8bfd931a076ea902957946473b090c17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac699e20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc41d31-351e-4d66-a666-517c67d323f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77a13f49-2252-40b3-8472-8a376e6e1f99","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.295062} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.301088,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac699e20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9bc41d31-351e-4d66-a666-517c67d323f5","object_type":"device","rebac_allow":false,"scope_allow":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":"ac699e20-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ac699e20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling 200 9ms","method":"POST","requestID":"ac699e20-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/9bc41d31-351e-4d66-a666-517c67d323f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ac6b24c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29d13a8b-a479-40fa-a7b8-036ecba576d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"142bda7f-d74f-4372-b414-d50a610f3634","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.304554} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.177224,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ac6b24c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4","object_type":"device","rebac_allow":false,"scope_allow":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":"ac6b24c0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ac6b24c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling 200 8ms","method":"POST","requestID":"ac6b24c0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/29d13a8b-a479-40fa-a7b8-036ecba576d4/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f1e3112-4ff5-4b85-90af-584ca0749b2d': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f1e3112-4ff5-4b85-90af-584ca0749b2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"3c10340d-03a4-4567-bedb-fe045eb671ba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.30951} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c40ea01-1b76-45ed-ab1c-1876b6450c8b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.3098066} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"8bfd931a076ea902957946473b090c17","responseTime":22,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d","requestID":"8bfd931a076ea902957946473b090c17"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8bfd931a076ea902957946473b090c17"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +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.677","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"370917d1c941e744dfadbde51970f2a1"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +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.668","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"92d235c5d0b4d019fbbb19b9781634fc"} experiment-1 | {"level":"info","message":"DELETE /experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d 204 193ms","method":"DELETE","requestID":"8bfd931a076ea902957946473b090c17","responseTime":193,"status":204,"url":"/experiments/9f1e3112-4ff5-4b85-90af-584ca0749b2d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 169ms","method":"POST","requestID":"fb05009fe6ba1fb4c6194d49349d3604","responseTime":169,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8","level":"info","message":"auth send jwt","requestID":"cb0b903daedb6276c8961fd329538f87"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch","requestID":"fb05009fe6ba1fb4c6194d49349d3604"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cb0b903daedb6276c8961fd329538f87","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/29d13a8b-a479-40fa-a7b8-036ecba576d4' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"cb0b903daedb6276c8961fd329538f87"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 176ms","method":"POST","requestID":"2d2643b6b6b32df2d880736b21f9c939","responseTime":176,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch","requestID":"2d2643b6b6b32df2d880736b21f9c939"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.973776,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cb0b903daedb6276c8961fd329538f87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835500,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","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/9bc41d31-351e-4d66-a666-517c67d323f5' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c8705a3-26e2-494f-a637-79a08e101f2f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.4332535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c85aa5e-8447-483a-9f9d-3bc3173fe608","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.4391952} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"433484d1-2fdd-4012-ac40-cb29212ca112","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.4567902} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55511600-ecbf-4462-80c9-b5764ad23658","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.4570258} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"9c7adb73-7db1-48e8-99b3-fe50e16861a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.462692} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cb0b903daedb6276c8961fd329538f87"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb0b903daedb6276c8961fd329538f87"} device-1 | {"level":"info","message":"POST /devices? 201 63ms","method":"POST","requestID":"cb0b903daedb6276c8961fd329538f87","responseTime":63,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8","level":"info","message":"auth send jwt","requestID":"cf0e66607346b2e56547d1d6239a8769"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cf0e66607346b2e56547d1d6239a8769","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cf0e66607346b2e56547d1d6239a8769"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.861293,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cf0e66607346b2e56547d1d6239a8769","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835500,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMH0.K7M-NF8aTW4MkHPS3n6UdGC9MScpD2KcjgSN3GinfL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a6235573-e617-4b13-992b-c64257cf0fc9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.5005178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ece1fc6f-7672-4213-aed2-38cb36595fb8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.5058699} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6da5e5a3-1190-4b27-993b-62103acbf8ea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.5174563} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be4c3b4c-6a03-4239-846c-991cf6d7aa90","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.5175612} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"f6c07b41-2ebb-44f1-b342-b68fd0e3111a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835500.5213706} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cf0e66607346b2e56547d1d6239a8769"} gateway-1 | {"time_local":"28/Aug/2024:08:58:20 +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":"cf0e66607346b2e56547d1d6239a8769"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"cf0e66607346b2e56547d1d6239a8769","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"49a033d12ccdea69192581a90fb20529"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"49a033d12ccdea69192581a90fb20529","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"49a033d12ccdea69192581a90fb20529"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.515196,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"49a033d12ccdea69192581a90fb20529","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49a033d12ccdea69192581a90fb20529","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"d7aa60958f2d1d28bdfb999b67998070"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d7aa60958f2d1d28bdfb999b67998070","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d7aa60958f2d1d28bdfb999b67998070"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.726702,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d7aa60958f2d1d28bdfb999b67998070","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7aa60958f2d1d28bdfb999b67998070","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"cd939b8b-248e-43e0-8191-48f394b58a6c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.0348053} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49a033d12ccdea69192581a90fb20529","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7162119-35d8-4a5c-bcd6-431c6ca8cc51","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.0408595} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"49a033d12ccdea69192581a90fb20529","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"4d8d0f9b-7e56-4a61-b628-a8b37447c1ae","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.0427513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d7aa60958f2d1d28bdfb999b67998070","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4f2458c-5759-494a-bc2c-a39266ea1b72","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.0476167} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d7aa60958f2d1d28bdfb999b67998070","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"ae20c0fb-75cf-4f2c-baac-8bde0d45e86d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.0907779} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"49a033d12ccdea69192581a90fb20529","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"49a033d12ccdea69192581a90fb20529"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.075","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"49a033d12ccdea69192581a90fb20529"} device-1 | {"level":"info","message":"PATCH /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027 200 71ms","method":"PATCH","requestID":"49a033d12ccdea69192581a90fb20529","responseTime":71,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"2c559c40451404f282a58e1e72588ddc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2c559c40451404f282a58e1e72588ddc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c559c40451404f282a58e1e72588ddc"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626593,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2c559c40451404f282a58e1e72588ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2c559c40451404f282a58e1e72588ddc","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"897b132c-3c72-4909-aeaa-d65a4061d869","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.1022148} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7aa60958f2d1d28bdfb999b67998070","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d7aa60958f2d1d28bdfb999b67998070"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.080","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d7aa60958f2d1d28bdfb999b67998070"} device-1 | {"level":"info","message":"PATCH /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac 200 75ms","method":"PATCH","requestID":"d7aa60958f2d1d28bdfb999b67998070","responseTime":75,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"98e7aec5abcd6f01d110944af68b996d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"98e7aec5abcd6f01d110944af68b996d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"98e7aec5abcd6f01d110944af68b996d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793945,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"98e7aec5abcd6f01d110944af68b996d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"98e7aec5abcd6f01d110944af68b996d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c559c40451404f282a58e1e72588ddc"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2c559c40451404f282a58e1e72588ddc"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/websocket 200 22ms","method":"POST","requestID":"2c559c40451404f282a58e1e72588ddc","responseTime":22,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"98e7aec5abcd6f01d110944af68b996d"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/websocket 200 29ms","method":"POST","requestID":"98e7aec5abcd6f01d110944af68b996d","responseTime":29,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"98e7aec5abcd6f01d110944af68b996d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709506,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"882927f3-233d-4661-8d07-163faab7cba2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.1828604} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541"} device-1 | {"level":"info","message":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? 200 10ms","method":"GET","requestID":"b5c4f41ffc2004b64cb6e4ab9bc97541","responseTime":10,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"7e330f1b317f74b70b71ab633ee54d05"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e330f1b317f74b70b71ab633ee54d05","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7e330f1b317f74b70b71ab633ee54d05"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675014,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7e330f1b317f74b70b71ab633ee54d05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e330f1b317f74b70b71ab633ee54d05","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"445bb6e2-aa2b-45f4-92ef-d2ef11efe5c1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.1971416} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e330f1b317f74b70b71ab633ee54d05","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7e330f1b317f74b70b71ab633ee54d05"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e330f1b317f74b70b71ab633ee54d05"} device-1 | {"level":"info","message":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? 200 10ms","method":"GET","requestID":"7e330f1b317f74b70b71ab633ee54d05","responseTime":10,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"48291bb207356845fd0047d6edf3eb15"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"48291bb207356845fd0047d6edf3eb15","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"48291bb207356845fd0047d6edf3eb15"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.701283,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"48291bb207356845fd0047d6edf3eb15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48291bb207356845fd0047d6edf3eb15","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to run experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to book experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully booked experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639146,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703527,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"7623dec6-cfba-4e42-8670-d20f8d291787","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.2651594} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"b1f69541-bc90-4782-b467-ae934e3c3920","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.265852} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? 200 12ms","method":"GET","requestID":"acfd2b90-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? 200 12ms","method":"GET","requestID":"acfd52a0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Setting up experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully locked booking for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to update booking for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully updated booking for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully set up experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad087630-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad08eb60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140181,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully running experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad087630-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad087630-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645005,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b687e641-c5d8-475d-b090-1edb5242b585","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3401558} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.903406,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad08eb60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","rebac_allow":false,"scope_allow":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":"ad08eb60-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"9767a11d-a655-4049-adf9-99e72c7c765f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3423254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"845237ca-a484-4e78-91d7-fdb2db8e04ad","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3434255} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad087630-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad08eb60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling 200 14ms","method":"POST","requestID":"ad08eb60-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? 200 17ms","method":"GET","requestID":"ad089d40-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad087630-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? 200 19ms","method":"GET","requestID":"ad087630-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad0b5c60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad0baa80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"777d2744-11ae-4b75-8c87-812b3a240791","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3546963} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.577672,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad0b5c60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad0b5c60-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ce7a631-52b5-4062-a84a-a8ab77684887","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.356962} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad0b5c60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.516988,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling 200 9ms","method":"POST","requestID":"ad0b5c60-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad0baa80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","rebac_allow":false,"scope_allow":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":"ad0baa80-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F392c869b-55bf-4264-a842-1b620739e271#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F392c869b-55bf-4264-a842-1b620739e271","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"125a3332-c431-4f1a-adee-002b8a016853","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3597844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41daed42-7fef-4114-86fd-b368d32a324a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.359928} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"48291bb207356845fd0047d6edf3eb15","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad0baa80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling 200 11ms","method":"POST","requestID":"ad0baa80-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad0dcd60-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"48291bb207356845fd0047d6edf3eb15"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"48291bb207356845fd0047d6edf3eb15","responseTime":164,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25f89c40-9434-4ef8-bb11-837b9a0bdfd2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3707786} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.661701,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad0dcd60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad0dcd60-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad0dcd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling 200 9ms","method":"POST","requestID":"ad0dcd60-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Building connection plan","requestID":"48291bb207356845fd0047d6edf3eb15"} 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":"ab54038a-3d9e-43a6-bba6-3f5e9c883faf"},{"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":"355f3fe2-76ca-4763-bcc2-0a390e2dba02"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c618c89c-0dce-4f66-8de8-cde6544b0a81"}]},"level":"info","message":"Built pairwise service configurations","requestID":"48291bb207356845fd0047d6edf3eb15"} 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/016eb0c2-6c87-4840-b469-f4c24e5a7aac"},{"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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"48291bb207356845fd0047d6edf3eb15"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79543,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.59431,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.456759123Z"}]},"request_id":"1f98c9d9-717e-4e8c-be7e-2e808817bf89","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3831327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? 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":"eb18f8b1ed58a533ac34ade6d82f2f1d"} device-1 | {"level":"info","message":"GET /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027? 200 11ms","method":"GET","requestID":"eb18f8b1ed58a533ac34ade6d82f2f1d","responseTime":11,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc","level":"info","message":"auth send jwt","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"290dcb4f-d223-471b-ab0d-c041d6cdee87","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3930526} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0c3a8c1-4bb6-44f7-a122-9f78702a3660","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3934622} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963722,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835501,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwMX0.c5y25XAr2eY-K7uc3hJLdeiGFf0dgBlI0FnPW-FhTTc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:20.517425947Z"}]},"request_id":"c77ed3d1-b9ff-4944-b370-af46d54342f0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.3997142} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd'","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd'","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} 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":"ad0fa220-651b-11ef-b0da-d12cff5a1914","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":"getDevicesByDeviceId succeeded","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c"} device-1 | {"level":"info","message":"GET /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac? 200 35ms","method":"GET","requestID":"f14d4554b4dd2bcf7ec6edad033e1a8c","responseTime":35,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ad0fa220-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"48291bb207356845fd0047d6edf3eb15"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad223fc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12541bf4-47f9-439a-88b2-f5335e7a4e1e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.504713} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.493103,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad223fc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad223fc0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad223fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling 200 10ms","method":"POST","requestID":"ad223fc0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad241480-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d73edad2-7af9-4dd2-9cbc-c9ad69be4af3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835501.5168586} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.274692,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ad241480-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","rebac_allow":false,"scope_allow":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":"ad241480-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad241480-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling 200 9ms","method":"POST","requestID":"ad241480-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling"} device-1 | {"device":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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/54b7142f-53de-4c42-8548-ef5d2828f9bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4b5eb88c3c021a28db004248dae9c835","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4b5eb88c3c021a28db004248dae9c835","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/016eb0c2-6c87-4840-b469-f4c24e5a7aac"},{"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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"}}},"level":"info","message":"received a callback","requestID":"4b5eb88c3c021a28db004248dae9c835"} device-1 | {"device":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"4b5eb88c3c021a28db004248dae9c835","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"4b5eb88c3c021a28db004248dae9c835"} device-1 | {"device":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"54b7142f-53de-4c42-8548-ef5d2828f9bd","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/54b7142f-53de-4c42-8548-ef5d2828f9bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a50a8eceacea18a878a67ca59c8f550","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4a50a8eceacea18a878a67ca59c8f550","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/016eb0c2-6c87-4840-b469-f4c24e5a7aac"},{"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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"}}},"level":"info","message":"received a callback","requestID":"4a50a8eceacea18a878a67ca59c8f550"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ae610150-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F54b7142f-53de-4c42-8548-ef5d2828f9bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6133dbe3-ae99-424f-ba9a-1989706613df","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.5932472} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.130629,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae610150-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd","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":"ae610150-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ae610150-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd 200 7ms","method":"GET","requestID":"ae610150-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE","level":"info","message":"auth send jwt","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/392c869b-55bf-4264-a842-1b620739e271","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.764302,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c10bf7c43121d5afb3bbf3dbd603bebc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835503,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"4a50a8eceacea18a878a67ca59c8f550","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"4a50a8eceacea18a878a67ca59c8f550"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae65bc40-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/392c869b-55bf-4264-a842-1b620739e271","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/392c869b-55bf-4264-a842-1b620739e271 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc"} experiment-1 | {"level":"info","message":"GET /experiments/392c869b-55bf-4264-a842-1b620739e271 200 11ms","method":"GET","requestID":"c10bf7c43121d5afb3bbf3dbd603bebc","responseTime":11,"status":200,"url":"/experiments/392c869b-55bf-4264-a842-1b620739e271"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffce2390-380b-42ab-b491-de01ba499ca3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.6249604} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601274,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae65bc40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","rebac_allow":false,"scope_allow":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":"ae65bc40-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE","level":"info","message":"auth send jwt","requestID":"5c44ddb8028985e14e4ee29186ef8704"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5c44ddb8028985e14e4ee29186ef8704","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae65bc40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling 200 11ms","method":"POST","requestID":"ae65bc40-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae67b810-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/392c869b-55bf-4264-a842-1b620739e271","requestID":"5c44ddb8028985e14e4ee29186ef8704"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.874382,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5c44ddb8028985e14e4ee29186ef8704","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835503,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5c44ddb8028985e14e4ee29186ef8704","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c6b3f0b-252e-4fad-ae61-35daf8e5c1ed","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.6446877} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.329895,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae67b810-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","rebac_allow":false,"scope_allow":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":"ae67b810-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae67b810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling 200 17ms","method":"POST","requestID":"ae67b810-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Attempting to finish experiment","requestID":"5c44ddb8028985e14e4ee29186ef8704"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ae6ac550-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.701497,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae6ac550-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835503,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae6ac550-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"016eb0c2-6c87-4840-b469-f4c24e5a7aac","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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":"d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","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/54b7142f-53de-4c42-8548-ef5d2828f9bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F54b7142f-53de-4c42-8548-ef5d2828f9bd': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F54b7142f-53de-4c42-8548-ef5d2828f9bd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"b4edb577-1b14-4efa-862e-8a21623828b3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.6688612} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23f94718-2efc-45e5-b164-b9ce23235870","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.669156} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4260b56d9d7cec8fca8c1e6c3e0aca2d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ae6ac550-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4260b56d9d7cec8fca8c1e6c3e0aca2d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"44ad190036db6381e4eb4c388350d0ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"44ad190036db6381e4eb4c388350d0ac","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":"closed","url":"http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac"},{"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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"}}},"level":"info","message":"received a callback","requestID":"4260b56d9d7cec8fca8c1e6c3e0aca2d"} 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/016eb0c2-6c87-4840-b469-f4c24e5a7aac"},{"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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"}}},"level":"info","message":"received a callback","requestID":"44ad190036db6381e4eb4c388350d0ac"} device-1 | {"data":{"peerconnection":"54b7142f-53de-4c42-8548-ef5d2828f9bd","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ae6ac550-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd 204 48ms","method":"DELETE","requestID":"ae6ac550-651b-11ef-b0da-d12cff5a1914","responseTime":48,"status":204,"url":"/peerconnections/54b7142f-53de-4c42-8548-ef5d2828f9bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/392c869b-55bf-4264-a842-1b620739e271"},"level":"info","message":"Successfully finished experiment","requestID":"5c44ddb8028985e14e4ee29186ef8704"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae752590-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F016eb0c2-6c87-4840-b469-f4c24e5a7aac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9d0abc1-5056-4c7b-a3e4-7ab88eb74d3b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.7248714} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.066048,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae752590-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac","object_type":"device","rebac_allow":false,"scope_allow":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":"ae752590-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae752590-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling 200 7ms","method":"POST","requestID":"ae752590-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/016eb0c2-6c87-4840-b469-f4c24e5a7aac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae768520-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F392c869b-55bf-4264-a842-1b620739e271': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F392c869b-55bf-4264-a842-1b620739e271","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"824990cb-868c-41aa-8601-94f8c964d475","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.7316163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ee33d26-aa4c-4cad-99b8-d9835f37a113","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.7320151} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"5c44ddb8028985e14e4ee29186ef8704","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6d4120d-d58e-4c94-b9e2-dc0f8f03a027","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b7ed6a3-087a-4fe7-82ca-68d604fda423","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.735341} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.777123,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ae768520-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae768520-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae768520-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling 200 9ms","method":"POST","requestID":"ae768520-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/392c869b-55bf-4264-a842-1b620739e271","requestID":"5c44ddb8028985e14e4ee29186ef8704"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/392c869b-55bf-4264-a842-1b620739e271 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c44ddb8028985e14e4ee29186ef8704"} experiment-1 | {"level":"info","message":"DELETE /experiments/392c869b-55bf-4264-a842-1b620739e271 204 179ms","method":"DELETE","requestID":"5c44ddb8028985e14e4ee29186ef8704","responseTime":179,"status":204,"url":"/experiments/392c869b-55bf-4264-a842-1b620739e271"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +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.671","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d5a3e8a979a41c3186192b07d31984e3"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +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.692","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ed8d77ac626339b837ab6998c5066479"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"4260b56d9d7cec8fca8c1e6c3e0aca2d","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"4260b56d9d7cec8fca8c1e6c3e0aca2d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"44ad190036db6381e4eb4c388350d0ac","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"44ad190036db6381e4eb4c388350d0ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE","level":"info","message":"auth send jwt","requestID":"ed978f8cf1f9961fc4d676ff191bb12f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","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/d6d4120d-d58e-4c94-b9e2-dc0f8f03a027' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"ed978f8cf1f9961fc4d676ff191bb12f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.107823,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ed978f8cf1f9961fc4d676ff191bb12f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835503,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","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/016eb0c2-6c87-4840-b469-f4c24e5a7aac' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a8e2ba29-bb04-41dc-978a-ed028bab7458","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.8536892} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a29e1376-d12c-4f3e-8370-82840fa43130","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.8598433} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"fbfdf700-9b36-4f7e-b5d8-974e8bdaf69d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.8721008} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9276a687-c99d-4e71-a59a-7daf6be8f38a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.8725426} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.872068719Z"}]},"request_id":"3712e888-9450-4276-8d7d-e2146b2b3cde","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.8769774} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ed978f8cf1f9961fc4d676ff191bb12f"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed978f8cf1f9961fc4d676ff191bb12f"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"ed978f8cf1f9961fc4d676ff191bb12f","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE","level":"info","message":"auth send jwt","requestID":"26aa12fac1b573be607c0b53728dd208"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"26aa12fac1b573be607c0b53728dd208","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"26aa12fac1b573be607c0b53728dd208"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.892575,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"26aa12fac1b573be607c0b53728dd208","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835503,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwM30.iW9mmVdbFl0KZg0yNbbaD685hc69XP8Wczn_zydYlrE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2f38480d-e594-440e-a45b-888a4e8b2766","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.9162374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c6c3eb4-7b4c-4d20-94d8-2ee80592118f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.9215562} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"f04a3041-6136-4f76-b28b-1b30890e9baf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.9344583} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e816f286-d20b-4452-8659-cbbf209c5a3e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.9346979} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.934430592Z"}]},"request_id":"7beff521-908b-41bc-b21a-45fbaba7051e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835503.9387329} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"26aa12fac1b573be607c0b53728dd208"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26aa12fac1b573be607c0b53728dd208"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"26aa12fac1b573be607c0b53728dd208","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eff4145b40d5714df7823d7dd0427416","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eff4145b40d5714df7823d7dd0427416","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/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":"eff4145b40d5714df7823d7dd0427416"} device-1 | {"level":"info","message":"OPTIONS /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/websocket 200 0ms","method":"OPTIONS","requestID":"eff4145b40d5714df7823d7dd0427416","responseTime":0,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c57f2fc9df086814834b4c7881d8724","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4c57f2fc9df086814834b4c7881d8724","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4c57f2fc9df086814834b4c7881d8724"} device-1 | {"level":"info","message":"OPTIONS /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket 200 0ms","method":"OPTIONS","requestID":"4c57f2fc9df086814834b4c7881d8724","responseTime":0,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNX0.0Qxr1m-Pi8M_N10igdCZwPZXUnqfxiDCg6WDIQcvwtg","level":"info","message":"auth send jwt","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNX0.0Qxr1m-Pi8M_N10igdCZwPZXUnqfxiDCg6WDIQcvwtg","level":"info","message":"auth send jwt","requestID":"7382fa84e7cdded814e31488230fda2b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7382fa84e7cdded814e31488230fda2b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7382fa84e7cdded814e31488230fda2b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:25Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07447,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c6f7607c46688bd390dfa2b0a0a0d98e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835505,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNX0.0Qxr1m-Pi8M_N10igdCZwPZXUnqfxiDCg6WDIQcvwtg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875667,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7382fa84e7cdded814e31488230fda2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835505,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNX0.0Qxr1m-Pi8M_N10igdCZwPZXUnqfxiDCg6WDIQcvwtg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7382fa84e7cdded814e31488230fda2b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7382fa84e7cdded814e31488230fda2b"} gateway-1 | {"time_local":"28/Aug/2024:08:58:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.014","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7382fa84e7cdded814e31488230fda2b"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket 200 9ms","method":"POST","requestID":"7382fa84e7cdded814e31488230fda2b","responseTime":9,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.162","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/websocket 200 156ms","method":"POST","requestID":"c6f7607c46688bd390dfa2b0a0a0d98e","responseTime":156,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU","level":"info","message":"auth send jwt","requestID":"bf03348f4338eea361432aaff698b301"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf03348f4338eea361432aaff698b301","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf03348f4338eea361432aaff698b301"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672296,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf03348f4338eea361432aaff698b301","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf03348f4338eea361432aaff698b301","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.872068719Z"}]},"request_id":"6c4de2fc-0f6f-46fd-adf6-68fddae50059","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.2246907} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bf03348f4338eea361432aaff698b301","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf03348f4338eea361432aaff698b301"} gateway-1 | {"time_local":"28/Aug/2024:08:58:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf03348f4338eea361432aaff698b301"} device-1 | {"level":"info","message":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? 200 10ms","method":"GET","requestID":"bf03348f4338eea361432aaff698b301","responseTime":10,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU","level":"info","message":"auth send jwt","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69146,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.934430592Z"}]},"request_id":"4bf4df91-b432-4554-bdab-697873845102","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.2387326} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050"} gateway-1 | {"time_local":"28/Aug/2024:08:58:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050"} device-1 | {"level":"info","message":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? 200 10ms","method":"GET","requestID":"fa9b59bfd73f2d11441c0f9a0eb6f050","responseTime":10,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU","level":"info","message":"auth send jwt","requestID":"87c85ab80918ccd275725170bb7ad368"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"87c85ab80918ccd275725170bb7ad368","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87c85ab80918ccd275725170bb7ad368"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.921904,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"87c85ab80918ccd275725170bb7ad368","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87c85ab80918ccd275725170bb7ad368","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to run experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to book experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully booked experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b017d910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0182730-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124876,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b017d910-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b017d910-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.668222,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0182730-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0182730-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.872068719Z"}]},"request_id":"a92a093d-83ed-4692-b6b9-791f2d3e323e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.4755447} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b017d910-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.934430592Z"}]},"request_id":"b54cf3e8-b6dc-4350-a9d7-2b22e0379730","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.4766018} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b0182730-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b017d910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? 200 15ms","method":"GET","requestID":"b017d910-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0182730-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? 200 14ms","method":"GET","requestID":"b0182730-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Setting up experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully set up experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b04f3cc0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully running experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896344,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.31461,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e230a326-21f0-4692-a7d2-50dd49b41b82","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.834794} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.004504,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b04f3cc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","rebac_allow":false,"scope_allow":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":"b04f3cc0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.872068719Z"}]},"request_id":"b4b142ef-1c31-4430-bacb-aa1ddd962e92","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.8370504} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.934430592Z"}]},"request_id":"ad6774ae-7133-47ea-952f-f3e71214f782","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.840134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b04f3cc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling 200 15ms","method":"POST","requestID":"b04f3cc0-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b05222f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? 200 26ms","method":"GET","requestID":"b04ea080-651b-11ef-b0da-d12cff5a1914","responseTime":26,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? 200 25ms","method":"GET","requestID":"b04eeea0-651b-11ef-b0da-d12cff5a1914","responseTime":25,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f904fbb-c3eb-472c-bfdb-c44e30e07a3d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.852306} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.709363,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0530d50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b05222f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b05222f0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b05222f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling 200 11ms","method":"POST","requestID":"b05222f0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f531b30e-d222-4d23-9643-165a2d44ae02","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.8582916} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.829514,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0530d50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0530d50-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0530d50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling 200 10ms","method":"POST","requestID":"b0530d50-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b054e210-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24ef23e2-b60d-476c-93e9-1f29072635d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.8698382} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.165671,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b054e210-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","rebac_allow":false,"scope_allow":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":"b054e210-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b054e210-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling 200 8ms","method":"POST","requestID":"b054e210-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Building connection plan","requestID":"87c85ab80918ccd275725170bb7ad368"} 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":"9b166bbe-2393-440e-a8ed-5ab78ae278b5"},{"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":"d83ea8ac-679c-4360-856f-f7d48fd18dac"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ff13d325-11d9-4e26-8807-6b913ec32fe1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87c85ab80918ccd275725170bb7ad368"} 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/a9e18951-8e65-4464-a284-f9cb1ff689e2"},{"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/14d1e6c4-0103-46df-adc0-113d4d82c892"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87c85ab80918ccd275725170bb7ad368"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.688721,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fef6927-2c91-4be8-941c-b2d3428a951e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fef6927-2c91-4be8-941c-b2d3428a951e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2f479dcd-6c29-4775-baf2-5114ea7579a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.9163866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12269abf-97e3-486c-b542-de244e22fb42","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.9165657} authorization-1 | {"level":"info","message":"POST /relations/update 200 89ms","method":"POST","requestID":"87c85ab80918ccd275725170bb7ad368","responseTime":89,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"fe6274cd-3b88-43d3-af61-1166bebd8dd0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.9204845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77ca65c2-67a6-434a-a088-9188d30bd49a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.920667} authorization-1 | {"level":"info","message":"POST /relations/update 200 40ms","method":"POST","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914","responseTime":40,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87c85ab80918ccd275725170bb7ad368"} gateway-1 | {"time_local":"28/Aug/2024:08:58:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.685","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87c85ab80918ccd275725170bb7ad368"} experiment-1 | {"level":"info","message":"POST /experiments? 201 681ms","method":"POST","requestID":"87c85ab80918ccd275725170bb7ad368","responseTime":681,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU","level":"info","message":"auth send jwt","requestID":"61922460e854b74e60ef77c28d031c87"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"61922460e854b74e60ef77c28d031c87","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"61922460e854b74e60ef77c28d031c87"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72396,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"61922460e854b74e60ef77c28d031c87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835506,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwNn0.8inuhhmjqK4hi2OJ6JTFcS8cXPSGZMCfc73v_EQt-zU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"61922460e854b74e60ef77c28d031c87","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.872068719Z"}]},"request_id":"4e772658-c602-4ea8-80b5-8d9b52b12013","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835506.9414117} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"61922460e854b74e60ef77c28d031c87","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9'","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9'","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 175ms","method":"POST","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914","responseTime":175,"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":"61922460e854b74e60ef77c28d031c87"} gateway-1 | {"time_local":"28/Aug/2024:08:58:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61922460e854b74e60ef77c28d031c87"} device-1 | {"level":"info","message":"GET /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2? 200 117ms","method":"GET","requestID":"61922460e854b74e60ef77c28d031c87","responseTime":117,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b0568fc0-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E","level":"info","message":"auth send jwt","requestID":"60edcd5dadd859bc128c944bfcb95ca5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"60edcd5dadd859bc128c944bfcb95ca5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60edcd5dadd859bc128c944bfcb95ca5"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","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/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","device":"14d1e6c4-0103-46df-adc0-113d4d82c892","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} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731995,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"60edcd5dadd859bc128c944bfcb95ca5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835507,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60edcd5dadd859bc128c944bfcb95ca5","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:23.934430592Z"}]},"request_id":"01259a2b-6940-434d-8b70-46248f7702b7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835507.0690427} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"60edcd5dadd859bc128c944bfcb95ca5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60edcd5dadd859bc128c944bfcb95ca5"} gateway-1 | {"time_local":"28/Aug/2024:08:58:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? 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":"60edcd5dadd859bc128c944bfcb95ca5"} device-1 | {"level":"info","message":"GET /devices/14d1e6c4-0103-46df-adc0-113d4d82c892? 200 14ms","method":"GET","requestID":"60edcd5dadd859bc128c944bfcb95ca5","responseTime":14,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892?"} device-1 | {"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1415403670684611676 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:LR/7\r\na=ice-pwd:LLma3Dm1BL+Z2BgGwuZtXutv\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A0:67:A2:B0:44:CE:8F:EC:37:DD:7A:2A:1E:1A:3F:D6:1C:C3:66:F6:CB:44:82:3B:C3:0E:DF:63:A3:2D:B5:38\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4346302566100411609 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:1NB2\r\na=ice-pwd:Q0FVYA28VVjYjaa7MWa3iDgP\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C1:ED:25:69:03:3D:80:8B:90:64:B8:55:3D:82:21:30:F4:1A:CE:03:C9:D3:53:AB:CE:4A:6A:E6:B8:4D:69:C6\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3552645210 1 udp 2113937151 04f70a0a-96a1-43d9-b197-f8aa7aef2908.local 47191 typ host generation 0 ufrag 1NB2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1089122633 1 udp 1677729535 141.24.211.56 47191 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1NB2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2739143810 1 udp 2113937151 becbd6cb-1f47-4e05-8bb8-d134381a4a69.local 57599 typ host generation 0 ufrag LR/7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:812623249 1 udp 1677729535 141.24.211.56 57599 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag LR/7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","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/a9e18951-8e65-4464-a284-f9cb1ff689e2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892'"} device-1 | {"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a7abfc6a81f61f2fe5217f8da8306b5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5a7abfc6a81f61f2fe5217f8da8306b5","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/a9e18951-8e65-4464-a284-f9cb1ff689e2"},{"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/14d1e6c4-0103-46df-adc0-113d4d82c892"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"}}},"level":"info","message":"received a callback","requestID":"5a7abfc6a81f61f2fe5217f8da8306b5"} device-1 | {"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","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/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"14d1e6c4-0103-46df-adc0-113d4d82c892","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E","level":"info","message":"auth send jwt","requestID":"b3545896b4888386e7c2dd939b7cb0f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b3545896b4888386e7c2dd939b7cb0f3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"b3545896b4888386e7c2dd939b7cb0f3"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.690758,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3545896b4888386e7c2dd939b7cb0f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835507,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b3545896b4888386e7c2dd939b7cb0f3","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"5a7abfc6a81f61f2fe5217f8da8306b5","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a7abfc6a81f61f2fe5217f8da8306b5"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"b3545896b4888386e7c2dd939b7cb0f3"} gateway-1 | {"time_local":"28/Aug/2024:08:58:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e HTTP/1.1","status": "200","body_bytes_sent":"1282","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3545896b4888386e7c2dd939b7cb0f3"} experiment-1 | {"level":"info","message":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e 200 30ms","method":"GET","requestID":"b3545896b4888386e7c2dd939b7cb0f3","responseTime":30,"status":200,"url":"/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E","level":"info","message":"auth send jwt","requestID":"3759a417ed9e15dd5175ac4a73b6e49c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3759a417ed9e15dd5175ac4a73b6e49c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"3759a417ed9e15dd5175ac4a73b6e49c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.251867,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3759a417ed9e15dd5175ac4a73b6e49c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835507,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3759a417ed9e15dd5175ac4a73b6e49c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87c85ab80918ccd275725170bb7ad368"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0cf1b20-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"3759a417ed9e15dd5175ac4a73b6e49c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e HTTP/1.1","status": "200","body_bytes_sent":"1282","request_time":"0.268","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3759a417ed9e15dd5175ac4a73b6e49c"} experiment-1 | {"level":"info","message":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e 200 262ms","method":"GET","requestID":"3759a417ed9e15dd5175ac4a73b6e49c","responseTime":262,"status":200,"url":"/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ca7634a-4aea-4750-9565-444212745f5b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835507.671487} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.832394,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0cf1b20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0cf1b20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0cf1b20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling 200 44ms","method":"POST","requestID":"b0cf1b20-651b-11ef-b0da-d12cff5a1914","responseTime":44,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0d62000-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6a81af4-6f4a-4e82-a1ff-a12974684c7f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835507.716788} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.584551,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0d62000-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0d62000-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0d62000-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling 200 55ms","method":"POST","requestID":"b0d62000-651b-11ef-b0da-d12cff5a1914","responseTime":55,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3fe96bdeee605e7614e8344e2d6a4217","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3fe96bdeee605e7614e8344e2d6a4217","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/a9e18951-8e65-4464-a284-f9cb1ff689e2"},{"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/14d1e6c4-0103-46df-adc0-113d4d82c892"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"}}},"level":"info","message":"received a callback","requestID":"3fe96bdeee605e7614e8344e2d6a4217"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b0df95e0-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E","level":"info","message":"auth send jwt","requestID":"bd8af6581396f996ce8d453f029db9c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd8af6581396f996ce8d453f029db9c7","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"bd8af6581396f996ce8d453f029db9c7"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62682077-2417-4943-b481-6529503a842b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835507.7795227} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"client_addr":"127.0.0.1:34062","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.830815,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd8af6581396f996ce8d453f029db9c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835507,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd8af6581396f996ce8d453f029db9c7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.399507,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b0df95e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","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":"b0df95e0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"bd8af6581396f996ce8d453f029db9c7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e HTTP/1.1","status": "200","body_bytes_sent":"1282","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd8af6581396f996ce8d453f029db9c7"} experiment-1 | {"level":"info","message":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e 200 9ms","method":"GET","requestID":"bd8af6581396f996ce8d453f029db9c7","responseTime":9,"status":200,"url":"/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b0df95e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9 200 78ms","method":"GET","requestID":"b0df95e0-651b-11ef-b0da-d12cff5a1914","responseTime":78,"status":200,"url":"/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E","level":"info","message":"auth send jwt","requestID":"c4f340113b34fde1b5755d305e01cbf9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4f340113b34fde1b5755d305e01cbf9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"c4f340113b34fde1b5755d305e01cbf9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.679297,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c4f340113b34fde1b5755d305e01cbf9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835507,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwN30.ClSzcSn6Z9YDp120hKGKT_mOgoJ2ecWahGWJiA2Ox_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c4f340113b34fde1b5755d305e01cbf9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 266ms","method":"POST","requestID":"3fe96bdeee605e7614e8344e2d6a4217","responseTime":266,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.270","http_referrer":"","http_user_agent":"node-fetch","requestID":"3fe96bdeee605e7614e8344e2d6a4217"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b107b750-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"c4f340113b34fde1b5755d305e01cbf9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} experiment-1 | {"level":"info","message":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e 200 148ms","method":"GET","requestID":"c4f340113b34fde1b5755d305e01cbf9","responseTime":148,"status":200,"url":"/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4f340113b34fde1b5755d305e01cbf9"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b33c59a1-0794-4680-8355-00d7ccdce46f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.0448806} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.881042,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b107b750-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOH0.t4nSokLzafZ9Shbycw7zWGpfhfJa72fnXXC_27yEBvg","level":"info","message":"auth send jwt","requestID":"466b223639dba9db15fa6f6048a642e3"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b107b750-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"466b223639dba9db15fa6f6048a642e3","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"466b223639dba9db15fa6f6048a642e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b107b750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling 200 18ms","method":"POST","requestID":"b107b750-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.291991,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"466b223639dba9db15fa6f6048a642e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835508,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOH0.t4nSokLzafZ9Shbycw7zWGpfhfJa72fnXXC_27yEBvg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"466b223639dba9db15fa6f6048a642e3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b10baef0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91a2a3f9-9e79-4bd6-b896-4df4f2d866d0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.0712533} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Attempting to finish experiment","requestID":"466b223639dba9db15fa6f6048a642e3"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.651082,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b10baef0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","rebac_allow":false,"scope_allow":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":"b10baef0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b10baef0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.682389,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling 200 17ms","method":"POST","requestID":"b10baef0-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835508,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOH0.t4nSokLzafZ9Shbycw7zWGpfhfJa72fnXXC_27yEBvg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","device":"a9e18951-8e65-4464-a284-f9cb1ff689e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","device":"14d1e6c4-0103-46df-adc0-113d4d82c892","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/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d29a16d02969717d0c2a7c852272930","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5d29a16d02969717d0c2a7c852272930","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1aeb1085-2dcf-46c8-a83c-98dc40b47dc9': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"2b600772-e119-47e1-b6c9-821464c56514","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.097945} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e0baf069b54113e52965115bc6511cf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/a9e18951-8e65-4464-a284-f9cb1ff689e2"},{"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/14d1e6c4-0103-46df-adc0-113d4d82c892"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"}}},"level":"info","message":"received a callback","requestID":"5d29a16d02969717d0c2a7c852272930"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dbea405-bc30-47a3-8427-6b7b09f8ea0b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.0986495} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3e0baf069b54113e52965115bc6511cf","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914","responseTime":11,"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/a9e18951-8e65-4464-a284-f9cb1ff689e2"},{"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/14d1e6c4-0103-46df-adc0-113d4d82c892"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"}}},"level":"info","message":"received a callback","requestID":"3e0baf069b54113e52965115bc6511cf"} device-1 | {"data":{"peerconnection":"1aeb1085-2dcf-46c8-a83c-98dc40b47dc9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9 204 304ms","method":"DELETE","requestID":"b10d3590-651b-11ef-b0da-d12cff5a1914","responseTime":304,"status":204,"url":"/peerconnections/1aeb1085-2dcf-46c8-a83c-98dc40b47dc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"},"level":"info","message":"Successfully finished experiment","requestID":"466b223639dba9db15fa6f6048a642e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b14890e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e18951-8e65-4464-a284-f9cb1ff689e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1037bafd-356a-48da-b7e3-e1dba4d803a9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.4700665} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.20766,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b14890e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2","object_type":"device","rebac_allow":false,"scope_allow":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":"b14890e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b14890e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling 200 16ms","method":"POST","requestID":"b14890e0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b14b9e20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14d1e6c4-0103-46df-adc0-113d4d82c892","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0419aeb-e5dc-4b8b-9a6c-f3d1b58cfb23","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.4903426} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.126104,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b14b9e20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892","object_type":"device","rebac_allow":false,"scope_allow":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":"b14b9e20-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b14b9e20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling 200 17ms","method":"POST","requestID":"b14b9e20-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/14d1e6c4-0103-46df-adc0-113d4d82c892/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fef6927-2c91-4be8-941c-b2d3428a951e': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2fef6927-2c91-4be8-941c-b2d3428a951e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"130d0469-058c-4d32-a2de-be151692b819","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.6211793} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0cf5b88-e30b-4834-af5b-d14eb5ff3faf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835508.6216924} authorization-1 | {"level":"info","message":"POST /relations/update 200 163ms","method":"POST","requestID":"466b223639dba9db15fa6f6048a642e3","responseTime":163,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e","requestID":"466b223639dba9db15fa6f6048a642e3"} gateway-1 | {"time_local":"28/Aug/2024:08:58:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"1.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"466b223639dba9db15fa6f6048a642e3"} experiment-1 | {"level":"info","message":"DELETE /experiments/2fef6927-2c91-4be8-941c-b2d3428a951e 204 1195ms","method":"DELETE","requestID":"466b223639dba9db15fa6f6048a642e3","responseTime":1195,"status":204,"url":"/experiments/2fef6927-2c91-4be8-941c-b2d3428a951e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 1151ms","method":"POST","requestID":"5d29a16d02969717d0c2a7c852272930","responseTime":1151,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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":"1.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"5d29a16d02969717d0c2a7c852272930"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 1150ms","method":"POST","requestID":"3e0baf069b54113e52965115bc6511cf","responseTime":1150,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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":"1.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e0baf069b54113e52965115bc6511cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOX0._ik10-D2cADU2GqVb-Y9PMADb-qs5dmx8pC5-PQWRhE","level":"info","message":"auth send jwt","requestID":"e0959994b0f21d242dc9999e0ec7bb42"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2848","request_time":"3.200","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dd6596dc2683e134917f800b87734bfc"} device-1 | {"level":"info","message":"postDevices called","requestID":"e0959994b0f21d242dc9999e0ec7bb42"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.989781,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e0959994b0f21d242dc9999e0ec7bb42","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835509,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOX0._ik10-D2cADU2GqVb-Y9PMADb-qs5dmx8pC5-PQWRhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2849","request_time":"3.353","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c5eb8d1d83ff54c759c62354f353ae0f"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/14d1e6c4-0103-46df-adc0-113d4d82c892' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"add7c2f0-d000-4cb8-9d41-d186b259f48c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835509.4715397} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c5e27c9-78f6-44de-a73b-402b32ce88fb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835509.4759133} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a9e18951-8e65-4464-a284-f9cb1ff689e2' closed"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e2118b3a-253f-4a65-9d04-7f1127c39332","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835509.9329293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d455691c-d67d-492c-b2fd-2f1c0103eaf1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835509.933136} authorization-1 | {"level":"info","message":"POST /relations/update 200 459ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":459,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:29.932894066Z"}]},"request_id":"d4f77ffc-42e6-48ee-90b7-5f5bc497c35b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835509.9369073} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e0959994b0f21d242dc9999e0ec7bb42"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.689","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0959994b0f21d242dc9999e0ec7bb42"} device-1 | {"level":"info","message":"POST /devices? 201 682ms","method":"POST","requestID":"e0959994b0f21d242dc9999e0ec7bb42","responseTime":682,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOX0._ik10-D2cADU2GqVb-Y9PMADb-qs5dmx8pC5-PQWRhE","level":"info","message":"auth send jwt","requestID":"2e740b725200400af1b308c8d42138c0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2e740b725200400af1b308c8d42138c0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2e740b725200400af1b308c8d42138c0"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.988341,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2e740b725200400af1b308c8d42138c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835509,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUwOX0._ik10-D2cADU2GqVb-Y9PMADb-qs5dmx8pC5-PQWRhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b6b9ccd1-1460-4098-9502-23448fad45e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835510.1250663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4a6476a-5450-4136-bfd3-184a0168b87f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835510.129396} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"0a7c2d57-e28f-4d05-91fc-b52ebfdd120a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835510.2596328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eef63276-7bc8-4467-a47a-d1f125cf322c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835510.259972} authorization-1 | {"level":"info","message":"POST /relations/update 200 133ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","responseTime":133,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:30.259609025Z"}]},"request_id":"e7e92973-aa13-4637-82a3-0b1ae448d738","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835510.2638936} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2e740b725200400af1b308c8d42138c0"} gateway-1 | {"time_local":"28/Aug/2024:08:58:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.326","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e740b725200400af1b308c8d42138c0"} device-1 | {"level":"info","message":"POST /devices? 201 323ms","method":"POST","requestID":"2e740b725200400af1b308c8d42138c0","responseTime":323,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1b87d0eebc76a0b6d8bbd12d99a7e99","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b1b87d0eebc76a0b6d8bbd12d99a7e99","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b1b87d0eebc76a0b6d8bbd12d99a7e99"} device-1 | {"level":"info","message":"OPTIONS /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket 200 0ms","method":"OPTIONS","requestID":"b1b87d0eebc76a0b6d8bbd12d99a7e99","responseTime":0,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"e3ca9d5645654ec78c4a19864392ca65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e3ca9d5645654ec78c4a19864392ca65"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e3ca9d5645654ec78c4a19864392ca65","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.723503,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e3ca9d5645654ec78c4a19864392ca65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3ca9d5645654ec78c4a19864392ca65","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e375e7175a3396ed2a7f876f5dd9ed07","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e375e7175a3396ed2a7f876f5dd9ed07","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e375e7175a3396ed2a7f876f5dd9ed07"} device-1 | {"level":"info","message":"OPTIONS /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket 200 0ms","method":"OPTIONS","requestID":"e375e7175a3396ed2a7f876f5dd9ed07","responseTime":0,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"fd3e07560120bc7379dc018368524b8d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fd3e07560120bc7379dc018368524b8d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fd3e07560120bc7379dc018368524b8d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788753,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fd3e07560120bc7379dc018368524b8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fd3e07560120bc7379dc018368524b8d","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e3ca9d5645654ec78c4a19864392ca65"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket 200 76ms","method":"POST","requestID":"e3ca9d5645654ec78c4a19864392ca65","responseTime":76,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.081","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e3ca9d5645654ec78c4a19864392ca65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fd3e07560120bc7379dc018368524b8d"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket 200 61ms","method":"POST","requestID":"fd3e07560120bc7379dc018368524b8d","responseTime":61,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.065","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fd3e07560120bc7379dc018368524b8d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"1dca114e01528cba00d81f50961a3e33"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1dca114e01528cba00d81f50961a3e33","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dca114e01528cba00d81f50961a3e33"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696787,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1dca114e01528cba00d81f50961a3e33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1dca114e01528cba00d81f50961a3e33","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:29.932894066Z"}]},"request_id":"91dfb618-b392-431d-bba3-ea1764cdde1b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.7291806} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1dca114e01528cba00d81f50961a3e33","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dca114e01528cba00d81f50961a3e33"} device-1 | {"level":"info","message":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? 200 10ms","method":"GET","requestID":"1dca114e01528cba00d81f50961a3e33","responseTime":10,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1dca114e01528cba00d81f50961a3e33"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"7b56e284b0a4137f47c3fa5eabd712b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b56e284b0a4137f47c3fa5eabd712b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b56e284b0a4137f47c3fa5eabd712b9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970766,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7b56e284b0a4137f47c3fa5eabd712b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7b56e284b0a4137f47c3fa5eabd712b9","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:30.259609025Z"}]},"request_id":"39d9222c-9018-4014-8dc6-81b3bd6b11be","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.7437494} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7b56e284b0a4137f47c3fa5eabd712b9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b56e284b0a4137f47c3fa5eabd712b9"} device-1 | {"level":"info","message":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? 200 9ms","method":"GET","requestID":"7b56e284b0a4137f47c3fa5eabd712b9","responseTime":9,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b56e284b0a4137f47c3fa5eabd712b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"4ce26c1095180b88cc564b5c26c322db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ce26c1095180b88cc564b5c26c322db","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4ce26c1095180b88cc564b5c26c322db"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.714301,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"4ce26c1095180b88cc564b5c26c322db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ce26c1095180b88cc564b5c26c322db","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to run experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to book experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully booked experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870507,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.095831,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:29.932894066Z"}]},"request_id":"24b11be3-c731-469e-a5d1-52a2bc35f94e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.8070638} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:30.259609025Z"}]},"request_id":"c6a24663-e96e-4de7-80e0-ddc019c2aa3c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.8101041} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? 200 11ms","method":"GET","requestID":"b3de56f0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? 200 14ms","method":"GET","requestID":"b3de7e00-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Setting up experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully set up experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully running experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3eab300-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932218,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805254,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f62123ac-c237-4ff0-b4b3-cf1f37abd73c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.8860843} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:29.932894066Z"}]},"request_id":"3b2014ef-d27a-400c-987c-0dac56957ac9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.887314} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.64241,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3eab300-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","rebac_allow":false,"scope_allow":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":"b3eab300-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:30.259609025Z"}]},"request_id":"0f339251-c525-46dc-a4e9-44b1544d07dd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.8885906} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3eab300-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling 200 14ms","method":"POST","requestID":"b3eab300-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? 200 18ms","method":"GET","requestID":"b3ea3dd0-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? 200 17ms","method":"GET","requestID":"b3ea64e0-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3ed2400-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3ed7220-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9483cc0c-2562-48a2-bc11-9b0dee49a134","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9003546} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.251587,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3ed2400-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3ed2400-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35189178-0eb9-4415-a9da-ae842426acf5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9030569} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.507524,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3ed2400-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling 200 9ms","method":"POST","requestID":"b3ed2400-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3ed7220-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","rebac_allow":false,"scope_allow":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":"b3ed7220-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3d0cb102-f11b-4c07-888d-efdc6b58f381#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3d0cb102-f11b-4c07-888d-efdc6b58f381","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"25634be7-ae90-4048-8625-0c8b3467828e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9047413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b1624e0-6891-4f4f-8c38-cf7e5e438b11","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9050848} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"4ce26c1095180b88cc564b5c26c322db","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3ed7220-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling 200 10ms","method":"POST","requestID":"b3ed7220-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3ef6df0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4ce26c1095180b88cc564b5c26c322db"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"4ce26c1095180b88cc564b5c26c322db","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"695eb06c-94e6-4f28-b237-98c351b563ce","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.915552} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.283649,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3ef6df0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3ef6df0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3ef6df0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling 200 8ms","method":"POST","requestID":"b3ef6df0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Building connection plan","requestID":"4ce26c1095180b88cc564b5c26c322db"} 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":"324fcafb-1ce0-4d61-9cc0-335191c5b654"},{"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":"f99594a1-423d-40dd-a0ff-e8c5ed6d567f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"673d746f-1af7-4d1b-a146-dbc00f5444e6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4ce26c1095180b88cc564b5c26c322db"} 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/19fc0733-3bbf-470f-951b-c44c91f1c319"},{"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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4ce26c1095180b88cc564b5c26c322db"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96746,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d658b0f7d4a78f2eed7974d6358d0b2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.839588,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:29.932894066Z"}]},"request_id":"e16aa034-1389-4844-aca1-7edc0e8e4257","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9282117} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? 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":"d658b0f7d4a78f2eed7974d6358d0b2d"} device-1 | {"level":"info","message":"GET /devices/19fc0733-3bbf-470f-951b-c44c91f1c319? 200 12ms","method":"GET","requestID":"d658b0f7d4a78f2eed7974d6358d0b2d","responseTime":12,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"99735115-f45f-4270-8886-dc4c3c74e6e1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.933397} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"902a4722-594f-4e7c-8401-0a268803df54","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9336016} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k","level":"info","message":"auth send jwt","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.996057,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835512,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxMn0.juaxavSc_4yH_vOK8w2jAC66PsqIBfDF7ZA4hrX2y3k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:30.259609025Z"}]},"request_id":"a19e9af4-257e-45c4-aaf6-1a8cad1cadbe","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9445212} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800'","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800'","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} 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":"b3f11ba0-651b-11ef-b0da-d12cff5a1914","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? 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":"ffc564032f7ff7f0dd8c1a9fd98b2ec7"} device-1 | {"level":"info","message":"GET /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5? 200 17ms","method":"GET","requestID":"ffc564032f7ff7f0dd8c1a9fd98b2ec7","responseTime":17,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b3f11ba0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","device":"19fc0733-3bbf-470f-951b-c44c91f1c319","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/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","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/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4ce26c1095180b88cc564b5c26c322db"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3fba2f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e31b6653-400c-4d89-bbbe-4c240c880fd6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835512.9950716} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.301989,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3fba2f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","rebac_allow":false,"scope_allow":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":"b3fba2f0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3fba2f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling 200 7ms","method":"POST","requestID":"b3fba2f0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b3fd0280-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78f9be05-4287-482c-9bcb-50412e36f51b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.0039685} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.090373,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b3fd0280-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","rebac_allow":false,"scope_allow":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":"b3fd0280-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b3fd0280-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling 200 7ms","method":"POST","requestID":"b3fd0280-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling"} device-1 | {"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5137792678181267603 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:K67W\r\na=ice-pwd:lrQPWp3O80yaU9UCYMwYr4VF\r\na=ice-options:trickle\r\na=fingerprint:sha-256 84:5B:D4:43:92:60:E6:D1:E1:7D:FE:D7:68:21:97:6E:1F:CC:72:BB:C5:1F:62:36:AF:5F:FB:31:8D:2F:7C:42\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 9147973742657246856 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:g3gY\r\na=ice-pwd:4yHx9aK/PYYR6XWn+VLDhIaQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B6:95:AA:D9:C9:5B:F1:DE:F2:61:23:D4:39:E7:22:0E:29:FB:6C:40:0C:F4:59:DA:0E:D3:A4:FC:B9:1E:17:B9\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2667750172 1 udp 2113937151 c0669306-56d7-4709-9191-0c8d9b42506c.local 53981 typ host generation 0 ufrag g3gY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:204014095 1 udp 1677729535 141.24.211.56 53981 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag g3gY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","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/19fc0733-3bbf-470f-951b-c44c91f1c319'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319'"} device-1 | {"content":{"candidate":"candidate:2310569738 1 udp 2113937151 7fc2e1a2-1655-4713-a8b8-a39f0108e792.local 34929 typ host generation 0 ufrag K67W network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:445898265 1 udp 1677729535 141.24.211.56 34929 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag K67W network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5'"} device-1 | {"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","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/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"671806abd1813e0734cdb8c19bff881c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"671806abd1813e0734cdb8c19bff881c","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"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/19fc0733-3bbf-470f-951b-c44c91f1c319"},{"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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"}}},"level":"info","message":"received a callback","requestID":"671806abd1813e0734cdb8c19bff881c"} device-1 | {"device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"671806abd1813e0734cdb8c19bff881c","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"671806abd1813e0734cdb8c19bff881c"} device-1 | {"device":"19fc0733-3bbf-470f-951b-c44c91f1c319","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","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/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a3a2af9ef69d20c330879bc4207cf6a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a3a2af9ef69d20c330879bc4207cf6a7","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/19fc0733-3bbf-470f-951b-c44c91f1c319"},{"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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"}}},"level":"info","message":"received a callback","requestID":"a3a2af9ef69d20c330879bc4207cf6a7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b40d5630-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff701bdc6-1d4a-4be5-9ec1-a93e72a2d800","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cab499e9-459d-4173-a29b-56d6d877bc1b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.1115544} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.207385,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b40d5630-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","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":"b40d5630-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b40d5630-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800 200 8ms","method":"GET","requestID":"b40d5630-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"a3a2af9ef69d20c330879bc4207cf6a7","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"a3a2af9ef69d20c330879bc4207cf6a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b4125f40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"680d2e54-a573-406e-aa4c-f221cb63265d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.1435556} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.02445,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b4125f40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","rebac_allow":false,"scope_allow":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":"b4125f40-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b4125f40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling 200 7ms","method":"POST","requestID":"b4125f40-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b413bed0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f183b6f4-dd21-4478-8588-213ab43d6ea4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.152777} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.228028,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b413bed0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","rebac_allow":false,"scope_allow":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":"b413bed0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b413bed0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling 200 7ms","method":"POST","requestID":"b413bed0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ","level":"info","message":"auth send jwt","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.661558,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"5703bfbc81a8ffc41fd166f87b6b64e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835513,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2"} experiment-1 | {"level":"info","message":"GET /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381 200 9ms","method":"GET","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2","responseTime":9,"status":200,"url":"/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5703bfbc81a8ffc41fd166f87b6b64e2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ","level":"info","message":"auth send jwt","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fec928b50c9ce44f3fa8c1b96f061e98","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.277015,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"fec928b50c9ce44f3fa8c1b96f061e98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835513,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fec928b50c9ce44f3fa8c1b96f061e98","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Attempting to finish experiment","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.011181,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835513,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","device":"1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","device":"19fc0733-3bbf-470f-951b-c44c91f1c319","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/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff701bdc6-1d4a-4be5-9ec1-a93e72a2d800': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff701bdc6-1d4a-4be5-9ec1-a93e72a2d800","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"1564ba77-282c-4df0-a762-beab00edc5e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.2062447} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d83c58fdb823dbd569bc4a4930eee631","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d83c58fdb823dbd569bc4a4930eee631","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbda1ee8-2a27-4854-9007-5b1e78cc74fa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.2066128} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dcd121f1015107b6ca763cd5659eeddd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dcd121f1015107b6ca763cd5659eeddd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319"},{"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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"}}},"level":"info","message":"received a callback","requestID":"d83c58fdb823dbd569bc4a4930eee631"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319"},{"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/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"}}},"level":"info","message":"received a callback","requestID":"dcd121f1015107b6ca763cd5659eeddd"} device-1 | {"data":{"peerconnection":"f701bdc6-1d4a-4be5-9ec1-a93e72a2d800","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800 204 66ms","method":"DELETE","requestID":"b41a0060-651b-11ef-b0da-d12cff5a1914","responseTime":66,"status":204,"url":"/peerconnections/f701bdc6-1d4a-4be5-9ec1-a93e72a2d800"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"},"level":"info","message":"Successfully finished experiment","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b426f8b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19fc0733-3bbf-470f-951b-c44c91f1c319","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b918486e-068e-4ac3-b6c8-39043d71cc37","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.2798219} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.365805,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b426f8b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b426f8b0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b426f8b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling 200 8ms","method":"POST","requestID":"b426f8b0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/19fc0733-3bbf-470f-951b-c44c91f1c319/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b4287f50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e40cb361-3e01-4814-bb1d-22466cfc6eff","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.289091} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.138414,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b4287f50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5","object_type":"device","rebac_allow":false,"scope_allow":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":"b4287f50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b4287f50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling 200 8ms","method":"POST","requestID":"b4287f50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3d0cb102-f11b-4c07-888d-efdc6b58f381': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3d0cb102-f11b-4c07-888d-efdc6b58f381","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"59973805-c989-46a3-a25e-4296fd39c57c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.2986844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe6db44f-af05-440a-a5a2-832e1372dee2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.2992444} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"fec928b50c9ce44f3fa8c1b96f061e98","responseTime":26,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.198","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fec928b50c9ce44f3fa8c1b96f061e98"} experiment-1 | {"level":"info","message":"DELETE /experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381 204 196ms","method":"DELETE","requestID":"fec928b50c9ce44f3fa8c1b96f061e98","responseTime":196,"status":204,"url":"/experiments/3d0cb102-f11b-4c07-888d-efdc6b58f381"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 171ms","method":"POST","requestID":"d83c58fdb823dbd569bc4a4930eee631","responseTime":171,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch","requestID":"d83c58fdb823dbd569bc4a4930eee631"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 170ms","method":"POST","requestID":"dcd121f1015107b6ca763cd5659eeddd","responseTime":170,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch","requestID":"dcd121f1015107b6ca763cd5659eeddd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ","level":"info","message":"auth send jwt","requestID":"56b270dde9333f2e35c2697c15536e2e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"56b270dde9333f2e35c2697c15536e2e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"56b270dde9333f2e35c2697c15536e2e"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.007197,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"56b270dde9333f2e35c2697c15536e2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835513,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2847","request_time":"1.101","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dd705ebf4af50af541685d7717db9091"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2849","request_time":"1.085","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"54b2dc4a37edcf5dd7af53eb7574d38d"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/19fc0733-3bbf-470f-951b-c44c91f1c319' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8c61c59f-4cbe-4917-8ab1-233d2f98aee2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.3972573} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3de14d04-f421-4f10-b0f0-8ecdb573422e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4025862} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1a183a5a-5c2d-44b2-83d3-06f68e3e7ad5' closed"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"0565c89b-cf8a-4ed3-be20-72815931cdfa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4145381} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b5936b4-1ac6-4291-b7d0-e8ea037fe729","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4148808} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.414507393Z"}]},"request_id":"f7fe02db-e566-4539-b1b5-05052ad26ab6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4188774} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"56b270dde9333f2e35c2697c15536e2e"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56b270dde9333f2e35c2697c15536e2e"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"56b270dde9333f2e35c2697c15536e2e","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ","level":"info","message":"auth send jwt","requestID":"16d986a72479aba5849506a32493bc2b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"16d986a72479aba5849506a32493bc2b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"16d986a72479aba5849506a32493bc2b"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.649699,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"16d986a72479aba5849506a32493bc2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835513,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxM30.xhS03FlOW7ps2SOknk_RPLPwx4BXJagpvNxOl7TGcBQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9b922906-880f-4d24-86c8-3157970be958","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4513385} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f41b62f8-11ea-4b18-be56-bb117a4ce349","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4550405} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"29e1ce1e-a122-40d3-9b88-35bb2488a5a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4656532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e3f9003-2be3-4be8-b703-273349afc5d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4657} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"c7d2d75a-6938-4ded-a802-1fc7324ca405","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835513.4690123} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"16d986a72479aba5849506a32493bc2b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"16d986a72479aba5849506a32493bc2b","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16d986a72479aba5849506a32493bc2b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNH0.G_HQfWeouA3ae_9_C-RbND2ntIQ9bskivETTQR5VjAs","level":"info","message":"auth send jwt","requestID":"b4d0025d24d5e43a36be0381125bd887"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4d0025d24d5e43a36be0381125bd887","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b4d0025d24d5e43a36be0381125bd887"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:34Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713424,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b4d0025d24d5e43a36be0381125bd887","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835514,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNH0.G_HQfWeouA3ae_9_C-RbND2ntIQ9bskivETTQR5VjAs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b4d0025d24d5e43a36be0381125bd887","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"17932b93-b9cd-464a-995a-1b50082a492e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835514.0196035} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b4d0025d24d5e43a36be0381125bd887","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"718e2106-e71a-49d5-b1bb-2117eac21c9c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835514.0239706} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b4d0025d24d5e43a36be0381125bd887","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"464b91e3-d6e1-416f-aedd-e016a95a86e4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835514.2829473} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b4d0025d24d5e43a36be0381125bd887","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b4d0025d24d5e43a36be0381125bd887"} device-1 | {"level":"info","message":"PATCH /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e 200 275ms","method":"PATCH","requestID":"b4d0025d24d5e43a36be0381125bd887","responseTime":275,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.278","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b4d0025d24d5e43a36be0381125bd887"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNH0.G_HQfWeouA3ae_9_C-RbND2ntIQ9bskivETTQR5VjAs","level":"info","message":"auth send jwt","requestID":"60c0e05f23c25635037b1662fd097342"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"60c0e05f23c25635037b1662fd097342","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"60c0e05f23c25635037b1662fd097342"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:34Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.126157,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"60c0e05f23c25635037b1662fd097342","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835514,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNH0.G_HQfWeouA3ae_9_C-RbND2ntIQ9bskivETTQR5VjAs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60c0e05f23c25635037b1662fd097342","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"60c0e05f23c25635037b1662fd097342"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/websocket 200 244ms","method":"POST","requestID":"60c0e05f23c25635037b1662fd097342","responseTime":244,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.247","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"60c0e05f23c25635037b1662fd097342"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dfb2908b99ff321967aeaeec68ba24cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dfb2908b99ff321967aeaeec68ba24cc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket 200 1ms","method":"OPTIONS","requestID":"dfb2908b99ff321967aeaeec68ba24cc","responseTime":1,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.017","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dfb2908b99ff321967aeaeec68ba24cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo","level":"info","message":"auth send jwt","requestID":"d37687664bbacf601be1bfc2cdcdb6d9"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"d37687664bbacf601be1bfc2cdcdb6d9","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d37687664bbacf601be1bfc2cdcdb6d9"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893212,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d37687664bbacf601be1bfc2cdcdb6d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d37687664bbacf601be1bfc2cdcdb6d9","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.201","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d37687664bbacf601be1bfc2cdcdb6d9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d37687664bbacf601be1bfc2cdcdb6d9"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket 200 196ms","method":"POST","requestID":"d37687664bbacf601be1bfc2cdcdb6d9","responseTime":196,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo","level":"info","message":"auth send jwt","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169622,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.414507393Z"}]},"request_id":"14431cc5-58ca-49fe-b1e7-4f594f7084bd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835515.83851} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60"} gateway-1 | {"time_local":"28/Aug/2024:08:58:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? 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":"0fbef5cb2edd5ec65fc64c2ff8c54f60"} device-1 | {"level":"info","message":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? 200 17ms","method":"GET","requestID":"0fbef5cb2edd5ec65fc64c2ff8c54f60","responseTime":17,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo","level":"info","message":"auth send jwt","requestID":"71319ba3268d61d1cd44e6fa45da5f0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71319ba3268d61d1cd44e6fa45da5f0c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71319ba3268d61d1cd44e6fa45da5f0c"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819648,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"71319ba3268d61d1cd44e6fa45da5f0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71319ba3268d61d1cd44e6fa45da5f0c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"f9920428-271b-45ac-a5c6-417c41b7495d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835515.8608024} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71319ba3268d61d1cd44e6fa45da5f0c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71319ba3268d61d1cd44e6fa45da5f0c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 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":"71319ba3268d61d1cd44e6fa45da5f0c"} device-1 | {"level":"info","message":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 200 17ms","method":"GET","requestID":"71319ba3268d61d1cd44e6fa45da5f0c","responseTime":17,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo","level":"info","message":"auth send jwt","requestID":"194b0fc91812319a47dc7e981356f2f0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"194b0fc91812319a47dc7e981356f2f0","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"194b0fc91812319a47dc7e981356f2f0"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.849914,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"194b0fc91812319a47dc7e981356f2f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"194b0fc91812319a47dc7e981356f2f0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to run experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to book experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully booked experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947996,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91842,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.414507393Z"}]},"request_id":"3abb6ac7-f6d2-433d-9cf7-f13c7dd043fe","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.2765539} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"50ed67c1-a9cc-49f3-a8f0-175d23666587","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.2776086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? 200 18ms","method":"GET","requestID":"b5ef3590-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 200 16ms","method":"GET","requestID":"b5ef83b0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Setting up experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully locked booking for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to update booking for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully updated booking for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully set up experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b633dfb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.747865,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully running experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.871764,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a90f4ab1-38e4-4674-834a-a159d7f265e2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.728307} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.538376,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b633dfb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","rebac_allow":false,"scope_allow":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":"b633dfb0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"a4d43b6e-9415-4545-af94-e8cd3c4a4850","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.741131} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b633dfb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling 200 27ms","method":"POST","requestID":"b633dfb0-651b-11ef-b0da-d12cff5a1914","responseTime":27,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.414507393Z"}]},"request_id":"d6bec43d-16f2-49e6-afda-63cbc8279935","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.742381} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b638e8c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} device-1 | {"level":"info","message":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 200 41ms","method":"GET","requestID":"b6336a80-651b-11ef-b0da-d12cff5a1914","responseTime":41,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? 200 48ms","method":"GET","requestID":"b632ce40-651b-11ef-b0da-d12cff5a1914","responseTime":48,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b63a6f60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab6d4238-9466-4c69-8d04-67935e3702c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.7573483} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.126023,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b638e8c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","rebac_allow":false,"scope_allow":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":"b638e8c0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b638e8c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8763b3b3-f841-449f-9aae-39e67d4b8bbc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.763704} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.003965,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling 200 16ms","method":"POST","requestID":"b638e8c0-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b63a6f60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","rebac_allow":false,"scope_allow":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":"b63a6f60-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b63a6f60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling 200 10ms","method":"POST","requestID":"b63a6f60-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b63c6b30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44286b23-731f-4093-930b-58ebbb983275","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.7762406} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.537446,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b63c6b30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","rebac_allow":false,"scope_allow":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":"b63c6b30-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b63c6b30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling 200 14ms","method":"POST","requestID":"b63c6b30-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Building connection plan","requestID":"194b0fc91812319a47dc7e981356f2f0"} 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":"ce500173-790f-4ece-a41b-58ce8ec7586c"},{"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":"71362df8-4fef-4272-b241-b0af4086c293"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2e919787-0be3-4953-b4ea-8c4cd52d984f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"194b0fc91812319a47dc7e981356f2f0"} 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/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"},{"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/d621cf52-f4c1-48c2-94c7-c75a45da0b40"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"194b0fc91812319a47dc7e981356f2f0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.005358,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835515,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNX0.skFNqn6evwlYiDCK_JYlY5w3Eqr1LfPDKGbP2pU6wzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c8a696f-c16f-42e4-8dfb-3f7731151b60#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c8a696f-c16f-42e4-8dfb-3f7731151b60","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"ed4ae851-c9f0-4b1a-97ba-93e55d8926fd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.8668525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10eedd31-7d44-4b62-89f2-44165b723b20","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.867061} authorization-1 | {"level":"info","message":"POST /relations/update 200 139ms","method":"POST","requestID":"194b0fc91812319a47dc7e981356f2f0","responseTime":139,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"bc98f446-db62-47f5-8676-c1c1c536a5d1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.868548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"986f19af-5cf8-4739-855f-bcc9e4a828b7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.8688676} authorization-1 | {"level":"info","message":"POST /relations/update 200 76ms","method":"POST","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914","responseTime":76,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"194b0fc91812319a47dc7e981356f2f0"} gateway-1 | {"time_local":"28/Aug/2024:08:58:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"1.010","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"194b0fc91812319a47dc7e981356f2f0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 1005ms","method":"POST","requestID":"194b0fc91812319a47dc7e981356f2f0","responseTime":1005,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNn0.rWPQL_w9ftpzTJVjbujFiUTqIFh_SZ3HxOOXJfrBDYs","level":"info","message":"auth send jwt","requestID":"574b65748e4552457657b205b124ee3c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"574b65748e4552457657b205b124ee3c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"574b65748e4552457657b205b124ee3c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772216,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"574b65748e4552457657b205b124ee3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835516,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxNn0.rWPQL_w9ftpzTJVjbujFiUTqIFh_SZ3HxOOXJfrBDYs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"574b65748e4552457657b205b124ee3c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.414507393Z"}]},"request_id":"eb18ca61-fa47-4fea-afd0-e8af4850319e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835516.8904176} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"574b65748e4552457657b205b124ee3c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde'","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde'","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 262ms","method":"POST","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914","responseTime":262,"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":"574b65748e4552457657b205b124ee3c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"574b65748e4552457657b205b124ee3c"} device-1 | {"level":"info","message":"GET /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40? 200 167ms","method":"GET","requestID":"574b65748e4552457657b205b124ee3c","responseTime":167,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b63f0340-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxN30.SuhR8g6OByf9iAaOtPIE8IWSPerMmj08vlwJGhNuRNk","level":"info","message":"auth send jwt","requestID":"50b23f2763d2a2d089221fcb29f19247"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"50b23f2763d2a2d089221fcb29f19247","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50b23f2763d2a2d089221fcb29f19247"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:37Z"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","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} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.418326,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"50b23f2763d2a2d089221fcb29f19247","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835517,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxN30.SuhR8g6OByf9iAaOtPIE8IWSPerMmj08vlwJGhNuRNk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"50b23f2763d2a2d089221fcb29f19247","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:33.465621453Z"}]},"request_id":"0e6a37f0-ab5a-4ae0-b47c-460744ad804b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835517.0744429} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50b23f2763d2a2d089221fcb29f19247","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50b23f2763d2a2d089221fcb29f19247"} gateway-1 | {"time_local":"28/Aug/2024:08:58:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 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":"50b23f2763d2a2d089221fcb29f19247"} device-1 | {"level":"info","message":"GET /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e? 200 15ms","method":"GET","requestID":"50b23f2763d2a2d089221fcb29f19247","responseTime":15,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e?"} device-1 | {"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3037033078741205708 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:7Z8h\r\na=ice-pwd:fI6nCGK/oKVVFvyIZhh0Udca\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A5:46:AD:E7:FE:FB:C5:A8:2C:DE:0E:71:DC:AA:8E:8B:7C:96:A2:8C:D6:39:C9:D1:0F:19:D1:07:C8:73:D8:59\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"194b0fc91812319a47dc7e981356f2f0"} device-1 | {"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b682ea10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d69fc5e6-d490-4fab-84df-3f0c5ec39bea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835517.2394893} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.305291,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b682ea10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","rebac_allow":false,"scope_allow":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":"b682ea10-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b682ea10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling 200 13ms","method":"POST","requestID":"b682ea10-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6853400-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:37Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33c2c282-27bc-44dd-9f08-5297fe3f78bd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835517.2534046} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.278906,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b6853400-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","rebac_allow":false,"scope_allow":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":"b6853400-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6853400-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling 200 10ms","method":"POST","requestID":"b6853400-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling"} device-1 | {"device":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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/52aa4a02-ef74-42d8-bbf0-08fc63135cde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9838532fc672a9a07ada9d2f21d55f73","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9838532fc672a9a07ada9d2f21d55f73","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/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"},{"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/d621cf52-f4c1-48c2-94c7-c75a45da0b40"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"}}},"level":"info","message":"received a callback","requestID":"9838532fc672a9a07ada9d2f21d55f73"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"9838532fc672a9a07ada9d2f21d55f73","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"9838532fc672a9a07ada9d2f21d55f73"} device-1 | {"content":{"candidate":"candidate:733939879 1 udp 2113937151 0b427667-d920-4f29-bc25-120d6f5e3cae.local 53810 typ host generation 0 ufrag 7Z8h network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3096750516 1 udp 1677729535 141.24.211.56 53810 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 7Z8h network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:112726598 1 udp 33562623 141.24.210.113 51087 typ relay raddr 141.24.211.56 rport 53810 generation 0 ufrag 7Z8h network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40'"} device-1 | {"data":{"peerconnection":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","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/52aa4a02-ef74-42d8-bbf0-08fc63135cde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dbc74d29b2b4a7a9995c749e87c268fe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dbc74d29b2b4a7a9995c749e87c268fe","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/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"},{"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/d621cf52-f4c1-48c2-94c7-c75a45da0b40"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"}}},"level":"info","message":"received a callback","requestID":"dbc74d29b2b4a7a9995c749e87c268fe"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b7aceb20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F52aa4a02-ef74-42d8-bbf0-08fc63135cde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fc1ec6c-53e3-4001-9ecf-41beb43763dd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.1902997} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.26578,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7aceb20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","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":"b7aceb20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b7aceb20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde 200 8ms","method":"GET","requestID":"b7aceb20-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"dbc74d29b2b4a7a9995c749e87c268fe","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"dbc74d29b2b4a7a9995c749e87c268fe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7b0bbb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"020d3e17-a733-4a96-b5ff-dc75dedcd35f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.2159317} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.196286,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7b0bbb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","rebac_allow":false,"scope_allow":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":"b7b0bbb0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7b0bbb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling 200 9ms","method":"POST","requestID":"b7b0bbb0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7b26960-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6e18187-f245-408e-8052-39bf3123806a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.2257254} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17088,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7b26960-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","rebac_allow":false,"scope_allow":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":"b7b26960-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7b26960-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling 200 7ms","method":"POST","requestID":"b7b26960-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ","level":"info","message":"auth send jwt","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.883086,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bbc1bffea773e33bb6556ed94fbc8c9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835519,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e"} experiment-1 | {"level":"info","message":"GET /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60 200 9ms","method":"GET","requestID":"bbc1bffea773e33bb6556ed94fbc8c9e","responseTime":9,"status":200,"url":"/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ","level":"info","message":"auth send jwt","requestID":"9d7697765db6d937c39bda4404e11084"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9d7697765db6d937c39bda4404e11084","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","requestID":"9d7697765db6d937c39bda4404e11084"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.97139,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9d7697765db6d937c39bda4404e11084","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835519,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d7697765db6d937c39bda4404e11084","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Attempting to finish experiment","requestID":"9d7697765db6d937c39bda4404e11084"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.712393,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835519,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde","device":"d621cf52-f4c1-48c2-94c7-c75a45da0b40","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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":"9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","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/52aa4a02-ef74-42d8-bbf0-08fc63135cde' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"52aa4a02-ef74-42d8-bbf0-08fc63135cde","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F52aa4a02-ef74-42d8-bbf0-08fc63135cde': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F52aa4a02-ef74-42d8-bbf0-08fc63135cde","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"ac107cc4-b2c2-4d53-aed8-2c2810d1145b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.2960818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"620da482-df0f-4315-86f2-5f5d8888d189","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.2962594} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26ce908bab3e1db1ea00a3f7e61f4f37","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"26ce908bab3e1db1ea00a3f7e61f4f37","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8d956562fd91f2ea6195061e9d81d68","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"},{"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/d621cf52-f4c1-48c2-94c7-c75a45da0b40"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"}}},"level":"info","message":"received a callback","requestID":"26ce908bab3e1db1ea00a3f7e61f4f37"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e8d956562fd91f2ea6195061e9d81d68","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":"connected","url":"http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e"},{"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/d621cf52-f4c1-48c2-94c7-c75a45da0b40"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"}}},"level":"info","message":"received a callback","requestID":"e8d956562fd91f2ea6195061e9d81d68"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde 204 45ms","method":"DELETE","requestID":"b7bb9120-651b-11ef-b0da-d12cff5a1914","responseTime":45,"status":204,"url":"/peerconnections/52aa4a02-ef74-42d8-bbf0-08fc63135cde"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"},"level":"info","message":"Successfully finished experiment","requestID":"9d7697765db6d937c39bda4404e11084"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7c5ca50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f107c27-0894-4846-afdb-4a47a2491848","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.3528187} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.102683,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7c5ca50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e","object_type":"device","rebac_allow":false,"scope_allow":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":"b7c5ca50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7c5ca50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling 200 8ms","method":"POST","requestID":"b7c5ca50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7c729e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c8a696f-c16f-42e4-8dfb-3f7731151b60': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c8a696f-c16f-42e4-8dfb-3f7731151b60","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"234daed4-664a-476a-94ec-b4600c579fff","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.3604965} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"362f8fbe-6e29-4fb1-928e-26c542182d76","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.3607748} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"9d7697765db6d937c39bda4404e11084","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd621cf52-f4c1-48c2-94c7-c75a45da0b40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54e5839d-cb0c-40e3-b686-a007569d5d97","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.3632276} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.505416,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b7c729e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7c729e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7c729e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling 200 8ms","method":"POST","requestID":"b7c729e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/d621cf52-f4c1-48c2-94c7-c75a45da0b40/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60","requestID":"9d7697765db6d937c39bda4404e11084"} gateway-1 | {"time_local":"28/Aug/2024:08:58:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d7697765db6d937c39bda4404e11084"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60 204 168ms","method":"DELETE","requestID":"9d7697765db6d937c39bda4404e11084","responseTime":168,"status":204,"url":"/experiments/5c8a696f-c16f-42e4-8dfb-3f7731151b60"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"26ce908bab3e1db1ea00a3f7e61f4f37","responseTime":142,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"e8d956562fd91f2ea6195061e9d81d68","responseTime":142,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"c19884bdcfbd2bc837d47be899e5efb4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ","level":"info","message":"auth send jwt","requestID":"c19884bdcfbd2bc837d47be899e5efb4"} gateway-1 | {"time_local":"28/Aug/2024:08:58:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3190","request_time":"4.908","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"633f0c1483beac6b4e814d4e4e92e2db"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"26ce908bab3e1db1ea00a3f7e61f4f37"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"e8d956562fd91f2ea6195061e9d81d68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c19884bdcfbd2bc837d47be899e5efb4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.907139,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2704","request_time":"3.768","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"10c2b1280df66d5230acb4c93e13611b"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c19884bdcfbd2bc837d47be899e5efb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835519,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","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/d621cf52-f4c1-48c2-94c7-c75a45da0b40' closed"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9ccc5cb6-3de6-4dae-b5fc-3435f03f0a4e' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8409263e-50bc-42dd-9f48-ab2ac7f76fea","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.4856799} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09a175cd-c9b1-4120-9c87-3eb28a1e482b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.490873} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"21542c93-3ce2-40b8-a6e1-b8232d306658","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5113862} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39ceed17-1424-423b-bf94-a262d58b912b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5115113} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.511354764Z"}]},"request_id":"4f82d64d-93a7-4116-a636-a8ff8a5249c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5163949} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c19884bdcfbd2bc837d47be899e5efb4"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.078","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c19884bdcfbd2bc837d47be899e5efb4"} device-1 | {"level":"info","message":"POST /devices? 201 72ms","method":"POST","requestID":"c19884bdcfbd2bc837d47be899e5efb4","responseTime":72,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ","level":"info","message":"auth send jwt","requestID":"a8ae0ded489b214f5b83cbe97e47672b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a8ae0ded489b214f5b83cbe97e47672b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a8ae0ded489b214f5b83cbe97e47672b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.508276,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a8ae0ded489b214f5b83cbe97e47672b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835519,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUxOX0.zMRVJOG8gZ_vBoIUWvxZN55ttldBtlJC1E5YFihyABQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e43ca6a6-ff65-4bf2-b9ce-223c868d5834","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5498328} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7eac633d-ba50-4985-a275-ff6887bf88e3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.553898} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6cd766a5-6a60-4a80-9d2d-75b0b9ef01b5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5747004} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d5bcf16-f4af-4577-a4ff-b68d2c2e38d3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5747948} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"639f38aa-6001-4201-8ff8-bf48b82ff011","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835519.5786767} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a8ae0ded489b214f5b83cbe97e47672b"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"a8ae0ded489b214f5b83cbe97e47672b","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a8ae0ded489b214f5b83cbe97e47672b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMH0.BcXGlkCVaK_HyS4RXt6KzgtV1z9qaQo3iP6wDhD8PAo","level":"info","message":"auth send jwt","requestID":"693ca40534afe4acf9fd181edf0af69b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"693ca40534afe4acf9fd181edf0af69b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"693ca40534afe4acf9fd181edf0af69b"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731886,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"693ca40534afe4acf9fd181edf0af69b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835520,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMH0.BcXGlkCVaK_HyS4RXt6KzgtV1z9qaQo3iP6wDhD8PAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"693ca40534afe4acf9fd181edf0af69b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"0f0a002d-864e-4a12-b068-842f228a0660","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835520.2142415} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"693ca40534afe4acf9fd181edf0af69b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5499cc55-ea27-4d10-b505-54bcb8ada408","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835520.2186847} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"693ca40534afe4acf9fd181edf0af69b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"ccba4cfb-419a-44cb-8b10-6763d4996054","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835520.2451878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"693ca40534afe4acf9fd181edf0af69b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"693ca40534afe4acf9fd181edf0af69b"} gateway-1 | {"time_local":"28/Aug/2024:08:58:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1058fa8a-306b-4584-91bb-728bcf61888c HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"693ca40534afe4acf9fd181edf0af69b"} device-1 | {"level":"info","message":"PATCH /devices/1058fa8a-306b-4584-91bb-728bcf61888c 200 41ms","method":"PATCH","requestID":"693ca40534afe4acf9fd181edf0af69b","responseTime":41,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMH0.BcXGlkCVaK_HyS4RXt6KzgtV1z9qaQo3iP6wDhD8PAo","level":"info","message":"auth send jwt","requestID":"280f2d8c1cca91ec479d70ef194c8ad9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"280f2d8c1cca91ec479d70ef194c8ad9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"280f2d8c1cca91ec479d70ef194c8ad9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:40Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677248,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"280f2d8c1cca91ec479d70ef194c8ad9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835520,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMH0.BcXGlkCVaK_HyS4RXt6KzgtV1z9qaQo3iP6wDhD8PAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"280f2d8c1cca91ec479d70ef194c8ad9","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"280f2d8c1cca91ec479d70ef194c8ad9"} gateway-1 | {"time_local":"28/Aug/2024:08:58:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"280f2d8c1cca91ec479d70ef194c8ad9"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/websocket 200 22ms","method":"POST","requestID":"280f2d8c1cca91ec479d70ef194c8ad9","responseTime":22,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"215c5ef5880c2b2fb149d7ea868ce731","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"215c5ef5880c2b2fb149d7ea868ce731","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/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":"215c5ef5880c2b2fb149d7ea868ce731"} device-1 | {"level":"info","message":"OPTIONS /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/websocket 200 0ms","method":"OPTIONS","requestID":"215c5ef5880c2b2fb149d7ea868ce731","responseTime":0,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"bff7557bfb05373a7c1280cf577bfc2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bff7557bfb05373a7c1280cf577bfc2c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bff7557bfb05373a7c1280cf577bfc2c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21097,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bff7557bfb05373a7c1280cf577bfc2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bff7557bfb05373a7c1280cf577bfc2c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bff7557bfb05373a7c1280cf577bfc2c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bff7557bfb05373a7c1280cf577bfc2c"} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/websocket 200 44ms","method":"POST","requestID":"bff7557bfb05373a7c1280cf577bfc2c","responseTime":44,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"3bf386df8c7f1637b14bb989f310b82f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3bf386df8c7f1637b14bb989f310b82f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3bf386df8c7f1637b14bb989f310b82f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.081067,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3bf386df8c7f1637b14bb989f310b82f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3bf386df8c7f1637b14bb989f310b82f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.511354764Z"}]},"request_id":"e592fd91-dc4c-4e50-a967-ba538578ee45","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.641589} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3bf386df8c7f1637b14bb989f310b82f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3bf386df8c7f1637b14bb989f310b82f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 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":"3bf386df8c7f1637b14bb989f310b82f"} device-1 | {"level":"info","message":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 200 13ms","method":"GET","requestID":"3bf386df8c7f1637b14bb989f310b82f","responseTime":13,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"878e3107145a5e21153073385fcc5864"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"878e3107145a5e21153073385fcc5864","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"878e3107145a5e21153073385fcc5864"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745205,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"878e3107145a5e21153073385fcc5864","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"878e3107145a5e21153073385fcc5864","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"158a5218-fb81-4bf7-b249-502104ba7577","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.6602218} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"878e3107145a5e21153073385fcc5864","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"878e3107145a5e21153073385fcc5864"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 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":"878e3107145a5e21153073385fcc5864"} device-1 | {"level":"info","message":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 200 13ms","method":"GET","requestID":"878e3107145a5e21153073385fcc5864","responseTime":13,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"a4da67324efb522ba6b1a19499866fcd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a4da67324efb522ba6b1a19499866fcd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a4da67324efb522ba6b1a19499866fcd"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.742549,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a4da67324efb522ba6b1a19499866fcd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a4da67324efb522ba6b1a19499866fcd","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to run experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to book experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully booked experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728502,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937093,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.511354764Z"}]},"request_id":"572ceff6-f22b-49f6-9053-cfb3b6a18398","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.7338018} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"016a2fde-2663-4062-a6ec-b1bee61b7885","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.7363021} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 200 29ms","method":"GET","requestID":"b92f6c70-651b-11ef-b0da-d12cff5a1914","responseTime":29,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 200 31ms","method":"GET","requestID":"b92f9380-651b-11ef-b0da-d12cff5a1914","responseTime":31,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Setting up experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully set up experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b93d9d40-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully running experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940643,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869804,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86658c3a-f2e2-47dd-9954-d3c49a9d71d0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8180597} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.534133,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b93d9d40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","rebac_allow":false,"scope_allow":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":"b93d9d40-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.511354764Z"}]},"request_id":"6ea3a470-fc17-4313-9e37-bcaad068333e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8204935} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b93d9d40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"08941888-9828-4ea1-a921-cdb43c5acc89","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8227994} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling 200 11ms","method":"POST","requestID":"b93d9d40-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b93fc020-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} device-1 | {"level":"info","message":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 200 20ms","method":"GET","requestID":"b93d2810-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 200 19ms","method":"GET","requestID":"b93d4f20-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b940aa80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d22cbd13-a218-4242-9cf4-7fa60d36bcf9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8301618} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F53579139-2369-48c9-afd8-0513be70747e#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F53579139-2369-48c9-afd8-0513be70747e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"225cc45e-dee2-45f0-8e14-e41977ad8b88","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8325167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9fd4554-d13d-4d6b-b8a4-2a3fcac62799","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.832861} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.642681,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b93fc020-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","rebac_allow":false,"scope_allow":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":"b93fc020-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a4da67324efb522ba6b1a19499866fcd","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b93fc020-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling 200 12ms","method":"POST","requestID":"b93fc020-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f7146c0a-77f4-4adc-bf4e-581115e61348","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8404706} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.604989,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b940aa80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b940aa80-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a4da67324efb522ba6b1a19499866fcd"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"a4da67324efb522ba6b1a19499866fcd","responseTime":174,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b940aa80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling 200 13ms","method":"POST","requestID":"b940aa80-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b942f470-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"bf586bce16e83b5039022aebf399299c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf586bce16e83b5039022aebf399299c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf586bce16e83b5039022aebf399299c"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66abb46a-25a5-4fd2-820a-550be59aee5f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8530369} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963784,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf586bce16e83b5039022aebf399299c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf586bce16e83b5039022aebf399299c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.832458,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b942f470-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","rebac_allow":false,"scope_allow":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":"b942f470-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.511354764Z"}]},"request_id":"3ab5bc70-de2f-491b-9e77-40f06218a691","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8571467} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b942f470-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling 200 11ms","method":"POST","requestID":"b942f470-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf586bce16e83b5039022aebf399299c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Building connection plan","requestID":"a4da67324efb522ba6b1a19499866fcd"} 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":"56366dfd-6401-4b35-986a-771cf2b81b92"},{"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":"28cd9e9a-712c-4de2-83d0-bdbece045882"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5344f0ab-9c43-45cc-8e2b-d472028d615a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a4da67324efb522ba6b1a19499866fcd"} 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/6d5538f3-a200-4885-acd5-c1048940ca6a"},{"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/1058fa8a-306b-4584-91bb-728bcf61888c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a4da67324efb522ba6b1a19499866fcd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf586bce16e83b5039022aebf399299c"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 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":"bf586bce16e83b5039022aebf399299c"} device-1 | {"level":"info","message":"GET /devices/6d5538f3-a200-4885-acd5-c1048940ca6a? 200 12ms","method":"GET","requestID":"bf586bce16e83b5039022aebf399299c","responseTime":12,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a?"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.958021,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b9451750-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"516cd80b7cf898701b8bd41fa4ad9792"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A","level":"info","message":"auth send jwt","requestID":"516cd80b7cf898701b8bd41fa4ad9792"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"516cd80b7cf898701b8bd41fa4ad9792","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79064,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"516cd80b7cf898701b8bd41fa4ad9792","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835521,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyMX0.hhvMnm7drtll3HBlRWw0fj49PQ3DrvGBEj0OAPotM0A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"516cd80b7cf898701b8bd41fa4ad9792","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"d0f164f2-2c28-420d-a56b-0792126de796","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8758926} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1772556-4cf3-4e1d-9afb-66eedd3ad9e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8763127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:39.574674006Z"}]},"request_id":"a423c40b-46d5-47f3-a2a7-691b46bb839f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.8768406} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"516cd80b7cf898701b8bd41fa4ad9792","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"516cd80b7cf898701b8bd41fa4ad9792"} gateway-1 | {"time_local":"28/Aug/2024:08:58:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 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":"516cd80b7cf898701b8bd41fa4ad9792"} device-1 | {"level":"info","message":"GET /devices/1058fa8a-306b-4584-91bb-728bcf61888c? 200 13ms","method":"GET","requestID":"516cd80b7cf898701b8bd41fa4ad9792","responseTime":13,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf'","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf'","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b9451750-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","device":"6d5538f3-a200-4885-acd5-c1048940ca6a","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 | {"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a4da67324efb522ba6b1a19499866fcd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b950fe30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec89936c-5c0c-4ab4-a572-e679f0d72da9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.9433506} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.403049,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b950fe30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b950fe30-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b950fe30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling 200 8ms","method":"POST","requestID":"b950fe30-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b95284d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa41e671-b93c-4a54-9952-8554836f41ec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835521.9534783} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.130424,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b95284d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","rebac_allow":false,"scope_allow":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":"b95284d0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b95284d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling 200 8ms","method":"POST","requestID":"b95284d0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling"} device-1 | {"device":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8483404584733885576 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:Sh1R\r\na=ice-pwd:aCVMIxo7A3rOxO4wRQbmvk5C\r\na=ice-options:trickle\r\na=fingerprint:sha-256 50:D9:EF:F0:1D:DF:5C:E0:80:58:84:90:7D:39:C1:35:16:62:37:F0:C7:DA:59:03:88:DB:92:FC:C5:14:DD:0B\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1457331076 1 udp 2113937151 e2e05c7e-bcbf-49bf-91d2-aa4d7704f76e.local 33722 typ host generation 0 ufrag Sh1R network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","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/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:3538973179 1 udp 1677729535 141.24.211.56 33722 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Sh1R network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"855a1f1e5947154cd8924cc4b3dd290c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"855a1f1e5947154cd8924cc4b3dd290c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a"},{"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/1058fa8a-306b-4584-91bb-728bcf61888c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"}}},"level":"info","message":"received a callback","requestID":"855a1f1e5947154cd8924cc4b3dd290c"} device-1 | {"device":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"1058fa8a-306b-4584-91bb-728bcf61888c","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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a'"} device-1 | {"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"855a1f1e5947154cd8924cc4b3dd290c","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"855a1f1e5947154cd8924cc4b3dd290c"} device-1 | {"data":{"peerconnection":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"6d5538f3-a200-4885-acd5-c1048940ca6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6d5538f3-a200-4885-acd5-c1048940ca6a","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/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f6761762025f66720642fb3326a6e40","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f6761762025f66720642fb3326a6e40","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/6d5538f3-a200-4885-acd5-c1048940ca6a"},{"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/1058fa8a-306b-4584-91bb-728bcf61888c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"}}},"level":"info","message":"received a callback","requestID":"5f6761762025f66720642fb3326a6e40"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ba8a4180-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:43Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51de1d18-8927-4201-b9b9-8bac250d9fe5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835523.9963582} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.53889,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ba8a4180-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","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":"ba8a4180-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ba8a4180-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf 200 8ms","method":"GET","requestID":"ba8a4180-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"5f6761762025f66720642fb3326a6e40","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f6761762025f66720642fb3326a6e40"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8e3920-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9410de2d-e6d8-4011-a7b1-24b59537bc6b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.0218813} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.160681,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ba8e3920-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8e3920-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8e3920-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling 200 7ms","method":"POST","requestID":"ba8e3920-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8f98b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12a3e0df-f3e2-4642-a234-4a5d7b8e62b2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.0316665} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.455838,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ba8f98b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba8f98b0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8f98b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling 200 9ms","method":"POST","requestID":"ba8f98b0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"0142a40f6f84283cb0941643c6ab8457"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0142a40f6f84283cb0941643c6ab8457","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/53579139-2369-48c9-afd8-0513be70747e","requestID":"0142a40f6f84283cb0941643c6ab8457"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.668615,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0142a40f6f84283cb0941643c6ab8457","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0142a40f6f84283cb0941643c6ab8457","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/53579139-2369-48c9-afd8-0513be70747e","requestID":"0142a40f6f84283cb0941643c6ab8457"} experiment-1 | {"level":"info","message":"GET /experiments/53579139-2369-48c9-afd8-0513be70747e 200 9ms","method":"GET","requestID":"0142a40f6f84283cb0941643c6ab8457","responseTime":9,"status":200,"url":"/experiments/53579139-2369-48c9-afd8-0513be70747e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/53579139-2369-48c9-afd8-0513be70747e HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0142a40f6f84283cb0941643c6ab8457"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"0acf8221b7e3ef06a907585d2376dd24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0acf8221b7e3ef06a907585d2376dd24","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/53579139-2369-48c9-afd8-0513be70747e","requestID":"0acf8221b7e3ef06a907585d2376dd24"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.749122,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0acf8221b7e3ef06a907585d2376dd24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0acf8221b7e3ef06a907585d2376dd24","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Attempting to finish experiment","requestID":"0acf8221b7e3ef06a907585d2376dd24"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.686713,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","device":"6d5538f3-a200-4885-acd5-c1048940ca6a","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/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"1058fa8a-306b-4584-91bb-728bcf61888c","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":"1058fa8a-306b-4584-91bb-728bcf61888c","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"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2bc54126a2d5ba55af6c76c70896a2bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2bc54126a2d5ba55af6c76c70896a2bc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"462f340e-2b2f-4334-9cd8-3eab95e1caec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1213384} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6fb5b1c8-81c8-4128-a0e5-1de733bb2aff","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1215558} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"315ded32026731fe863f5455d7d4d4bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a"},{"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/1058fa8a-306b-4584-91bb-728bcf61888c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"}}},"level":"info","message":"received a callback","requestID":"2bc54126a2d5ba55af6c76c70896a2bc"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"315ded32026731fe863f5455d7d4d4bf","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914","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":"closed","url":"http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a"},{"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/1058fa8a-306b-4584-91bb-728bcf61888c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"}}},"level":"info","message":"received a callback","requestID":"315ded32026731fe863f5455d7d4d4bf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf 204 28ms","method":"DELETE","requestID":"ba9bcdb0-651b-11ef-b0da-d12cff5a1914","responseTime":28,"status":204,"url":"/peerconnections/f23fb5e8-1cf8-4c1f-85b3-2c9dfe3a06cf"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/53579139-2369-48c9-afd8-0513be70747e"},"level":"info","message":"Successfully finished experiment","requestID":"0acf8221b7e3ef06a907585d2376dd24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baa395e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d5538f3-a200-4885-acd5-c1048940ca6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"763070b5-094a-40c0-81fa-96b04e103408","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1625018} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.672446,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"baa395e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baa395e0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baa395e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling 200 8ms","method":"POST","requestID":"baa395e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/6d5538f3-a200-4885-acd5-c1048940ca6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baa51c80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F53579139-2369-48c9-afd8-0513be70747e': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F53579139-2369-48c9-afd8-0513be70747e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"e17762a3-05af-49cd-af7e-e2901989c380","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1691768} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"207589bc-d8bd-412b-b556-adae2a62fe75","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1700149} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"0acf8221b7e3ef06a907585d2376dd24","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1058fa8a-306b-4584-91bb-728bcf61888c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2b8b288-efd3-4c42-891d-443bf0d1ab61","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.1730878} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.409592,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"baa51c80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1058fa8a-306b-4584-91bb-728bcf61888c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baa51c80-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baa51c80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling 200 9ms","method":"POST","requestID":"baa51c80-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/1058fa8a-306b-4584-91bb-728bcf61888c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/53579139-2369-48c9-afd8-0513be70747e","requestID":"0acf8221b7e3ef06a907585d2376dd24"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/53579139-2369-48c9-afd8-0513be70747e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0acf8221b7e3ef06a907585d2376dd24"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2799","request_time":"3.965","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e3ee765d2d69535ce7fa87b5f53438f4"} experiment-1 | {"level":"info","message":"DELETE /experiments/53579139-2369-48c9-afd8-0513be70747e 204 144ms","method":"DELETE","requestID":"0acf8221b7e3ef06a907585d2376dd24","responseTime":144,"status":204,"url":"/experiments/53579139-2369-48c9-afd8-0513be70747e"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"2bc54126a2d5ba55af6c76c70896a2bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"2bc54126a2d5ba55af6c76c70896a2bc","responseTime":123,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"315ded32026731fe863f5455d7d4d4bf","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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":"315ded32026731fe863f5455d7d4d4bf"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +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.647","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c289235e3e69200fa73c8773581e197e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.834494,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","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/1058fa8a-306b-4584-91bb-728bcf61888c' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6d5538f3-a200-4885-acd5-c1048940ca6a' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"64695e57-0c61-4b34-a8f6-607311dec392","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.278775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57a29c7d-d7cc-4e38-98f7-1e6bb760dc4e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.2842638} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"4af09e04-c11d-4ca4-8ce2-1b0f0dd581dc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.2937024} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9d27ac4-d021-4775-933a-489ae372ddc1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.2939467} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"f46ba2e6-47ac-4f05-af67-640fd462462b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.2984633} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"eb5e2e0b18c22f89c2328a36607f4cc3","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.786007,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cce0913e-7a33-468d-a4d2-82d458e8fdec","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.3286748} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4fbddad7-2838-4374-9b53-6599bd2b59e7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.3336382} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"0f7aed06-57f1-4e3d-aa2f-0280a352b629","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.3452199} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f05ac654-68ca-40a9-9d6f-2e732c2691fb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.3454654} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.345197186Z"}]},"request_id":"0c8f89ac-039c-47d5-a939-1e5ae8ed2d35","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.3490644} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"e00d6d6f62fcc2e3c1d27e407761a55b","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"b000b5b1815af8172774afe0d458b877"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b000b5b1815af8172774afe0d458b877","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b000b5b1815af8172774afe0d458b877"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955133,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"b000b5b1815af8172774afe0d458b877","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b000b5b1815af8172774afe0d458b877","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"ecf8c1fb-fff6-46ff-8d72-b32f4dcc45ff","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.9351375} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b000b5b1815af8172774afe0d458b877","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f9dad472-a596-47aa-afcd-dc6346c17290","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.939033} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b000b5b1815af8172774afe0d458b877","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"f58e27ee-c2b0-4970-b8b4-9277c897ba34","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835524.9566095} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b000b5b1815af8172774afe0d458b877","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b000b5b1815af8172774afe0d458b877"} device-1 | {"level":"info","message":"PATCH /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac 200 33ms","method":"PATCH","requestID":"b000b5b1815af8172774afe0d458b877","responseTime":33,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b000b5b1815af8172774afe0d458b877"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q","level":"info","message":"auth send jwt","requestID":"50c769ccf695852f77ccd2bae8024a7f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"50c769ccf695852f77ccd2bae8024a7f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"50c769ccf695852f77ccd2bae8024a7f"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.733504,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"50c769ccf695852f77ccd2bae8024a7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835524,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNH0.Mvr_mRPbqY-LGHBCXgRN9uFU8mYOxgCgIMlMVKblJ7Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"50c769ccf695852f77ccd2bae8024a7f","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"50c769ccf695852f77ccd2bae8024a7f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"50c769ccf695852f77ccd2bae8024a7f"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/websocket 200 15ms","method":"POST","requestID":"50c769ccf695852f77ccd2bae8024a7f","responseTime":15,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7bff8fda17c400b9dde049f2ef7fd013","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7bff8fda17c400b9dde049f2ef7fd013","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/websocket 200 1ms","method":"OPTIONS","requestID":"7bff8fda17c400b9dde049f2ef7fd013","responseTime":1,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/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":"7bff8fda17c400b9dde049f2ef7fd013"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"79b3f735aa6804ce4b1e57865382d3c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"79b3f735aa6804ce4b1e57865382d3c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"79b3f735aa6804ce4b1e57865382d3c7"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980898,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"79b3f735aa6804ce4b1e57865382d3c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79b3f735aa6804ce4b1e57865382d3c7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"79b3f735aa6804ce4b1e57865382d3c7"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/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":"79b3f735aa6804ce4b1e57865382d3c7"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/websocket 200 17ms","method":"POST","requestID":"79b3f735aa6804ce4b1e57865382d3c7","responseTime":17,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"94eecb171b187ec836718003a410a558"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"94eecb171b187ec836718003a410a558","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94eecb171b187ec836718003a410a558"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763339,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94eecb171b187ec836718003a410a558","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94eecb171b187ec836718003a410a558","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"85bcbbbd-3028-41d4-bf62-a43d0158502a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.370753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94eecb171b187ec836718003a410a558","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94eecb171b187ec836718003a410a558"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 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":"94eecb171b187ec836718003a410a558"} device-1 | {"level":"info","message":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 200 12ms","method":"GET","requestID":"94eecb171b187ec836718003a410a558","responseTime":12,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"60c16edebc6e79cf2d90df9226f40435"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"60c16edebc6e79cf2d90df9226f40435","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60c16edebc6e79cf2d90df9226f40435"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688213,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"60c16edebc6e79cf2d90df9226f40435","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60c16edebc6e79cf2d90df9226f40435","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.345197186Z"}]},"request_id":"df31c779-f7d0-4f11-baec-dce0118bacc0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.386603} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"60c16edebc6e79cf2d90df9226f40435","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60c16edebc6e79cf2d90df9226f40435"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 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":"60c16edebc6e79cf2d90df9226f40435"} device-1 | {"level":"info","message":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 200 11ms","method":"GET","requestID":"60c16edebc6e79cf2d90df9226f40435","responseTime":11,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87492cd84ee3cd41b5cb34d4c3b90117","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.750575,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"87492cd84ee3cd41b5cb34d4c3b90117","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87492cd84ee3cd41b5cb34d4c3b90117","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to run experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to book experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully booked experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752426,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276478,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"e9238ffb-44ca-48d6-b37c-470ecb340a7e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.437816} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.345197186Z"}]},"request_id":"95d14853-ab00-4be0-bff7-58539be6aa7f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.4387906} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 200 14ms","method":"GET","requestID":"bbfe1cd0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 200 14ms","method":"GET","requestID":"bbfe43e0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Setting up experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully set up experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc068140-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc06a850-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully running experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936313,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.982065,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc068140-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bc068140-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.810095,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"785af2e9-6253-47f5-8dc9-1f700cea6cc0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.4916835} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc06a850-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","rebac_allow":false,"scope_allow":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":"bc06a850-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc06a850-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling 200 11ms","method":"POST","requestID":"bc06a850-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"f846bfce-c1fe-41b5-aa8a-beaad747c4d0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.4958408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.345197186Z"}]},"request_id":"b613e5a5-7b6c-453a-b08d-938c2535f04a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.496954} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bc068140-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc08cb30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 200 21ms","method":"GET","requestID":"bc065a30-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc068140-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23ac280b-aac7-47a7-ac82-b3eb63d15546","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5039759} device-1 | {"level":"info","message":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 200 21ms","method":"GET","requestID":"bc068140-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.996601,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc0a03b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc08cb30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","rebac_allow":false,"scope_allow":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":"bc08cb30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0af34210-3400-4e99-a78e-38da869d4d9b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5085192} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F606bfd31-ee7c-4c0a-bd2b-4e4d390fe828#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"819192d0-d966-4c68-8159-b62cafd5cb64","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5086303} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"87492cd84ee3cd41b5cb34d4c3b90117","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc08cb30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling 200 12ms","method":"POST","requestID":"bc08cb30-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d40a989-efaa-4eb9-904f-e5d3aceb2f83","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5130954} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.524882,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc0a03b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","rebac_allow":false,"scope_allow":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":"bc0a03b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc0a03b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling 200 10ms","method":"POST","requestID":"bc0a03b0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.128","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"level":"info","message":"POST /experiments? 201 124ms","method":"POST","requestID":"87492cd84ee3cd41b5cb34d4c3b90117","responseTime":124,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc0c2690-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"0a8e0419f57b04867dd62243db9eb901"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0a8e0419f57b04867dd62243db9eb901","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a8e0419f57b04867dd62243db9eb901"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"faa5f263-bf73-44de-bb5b-fb8180158173","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5257509} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.424078,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc0c2690-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bc0c2690-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645353,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0a8e0419f57b04867dd62243db9eb901","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0a8e0419f57b04867dd62243db9eb901","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc0c2690-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling 200 10ms","method":"POST","requestID":"bc0c2690-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.293676981Z"}]},"request_id":"927da7fd-c569-4f3a-8027-a4fa8b78ebba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.531532} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Building connection plan","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} 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":"a53aeb51-37d6-4ac9-99ac-552c466c8e70"},{"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":"31445895-be92-4c71-ae53-def33d1fc2e2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"9b01d219-0ea8-4aa4-b123-680428ff9856"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} 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/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"},{"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/f1205b85-0db0-44b3-831d-3fadaba93abf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a8e0419f57b04867dd62243db9eb901","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a8e0419f57b04867dd62243db9eb901"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 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":"0a8e0419f57b04867dd62243db9eb901"} device-1 | {"level":"info","message":"GET /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac? 200 12ms","method":"GET","requestID":"0a8e0419f57b04867dd62243db9eb901","responseTime":12,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac?"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.844294,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg","level":"info","message":"auth send jwt","requestID":"c7071b4e4e23864f17b7fec771d90291"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c7071b4e4e23864f17b7fec771d90291","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7071b4e4e23864f17b7fec771d90291"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717739,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c7071b4e4e23864f17b7fec771d90291","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835526,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyNn0.ItX1QaqFqNXfmVt_2fg-oP47JYqn-yz68zTWiMN0WFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7071b4e4e23864f17b7fec771d90291","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2b6fc40d-f9d9-464e-a1c6-949c8edfcc44","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5470119} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ae5324b-22c1-4c02-9c8d-8cbe524a1101","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.5471835} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:44.345197186Z"}]},"request_id":"a9643adb-0a25-4740-8154-24542df1bd92","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.547985} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7071b4e4e23864f17b7fec771d90291","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7071b4e4e23864f17b7fec771d90291"} gateway-1 | {"time_local":"28/Aug/2024:08:58:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 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":"c7071b4e4e23864f17b7fec771d90291"} device-1 | {"level":"info","message":"GET /devices/f1205b85-0db0-44b3-831d-3fadaba93abf? 200 12ms","method":"GET","requestID":"c7071b4e4e23864f17b7fec771d90291","responseTime":12,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f'","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f'","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} 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":"bc0e2260-651b-11ef-b0da-d12cff5a1914","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":"bc0e2260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","device":"f1205b85-0db0-44b3-831d-3fadaba93abf","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/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87492cd84ee3cd41b5cb34d4c3b90117"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc174a20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35a573ac-09a0-4bd7-acab-a44f8ee5644b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.600209} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.534325,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc174a20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","rebac_allow":false,"scope_allow":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":"bc174a20-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc174a20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling 200 10ms","method":"POST","requestID":"bc174a20-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc191ee0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:46Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96003931-c29b-4273-bb75-b7e0709176d9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835526.611365} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.826102,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:46Z"} device-1 | {"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","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/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bc191ee0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","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":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bc191ee0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 8925908934004557585 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:KrpF\r\na=ice-pwd:Jg4oQThRY2WKhdUWqXE//T2K\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AD:74:34:36:63:C7:1C:2C:3A:6A:9C:9F:01:45:59:E1:0F:25:2F:12:12:8F:92:DD:7D:37:DC:68:BE:28:25:26\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc191ee0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling 200 14ms","method":"POST","requestID":"bc191ee0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling"} device-1 | {"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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/22a76311-7694-49e8-81f9-79b75429458f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f4289140e97c3dabca7af687dbd6ec6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7f4289140e97c3dabca7af687dbd6ec6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"},{"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/f1205b85-0db0-44b3-831d-3fadaba93abf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"}}},"level":"info","message":"received a callback","requestID":"7f4289140e97c3dabca7af687dbd6ec6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"7f4289140e97c3dabca7af687dbd6ec6","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"7f4289140e97c3dabca7af687dbd6ec6"} device-1 | {"content":{"candidate":"candidate:498174501 1 udp 2113937151 301c2174-6d83-45b6-a051-db648eb927bb.local 43146 typ host generation 0 ufrag KrpF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2392468278 1 udp 1677729535 141.24.211.56 43146 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KrpF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:817270980 1 udp 33562623 141.24.210.113 63478 typ relay raddr 141.24.211.56 rport 43146 generation 0 ufrag KrpF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f1205b85-0db0-44b3-831d-3fadaba93abf","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/f1205b85-0db0-44b3-831d-3fadaba93abf'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf'"} device-1 | {"data":{"peerconnection":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"22a76311-7694-49e8-81f9-79b75429458f","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/22a76311-7694-49e8-81f9-79b75429458f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db1975726842da2eab796b5dd1ec9723","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"db1975726842da2eab796b5dd1ec9723","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/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"},{"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/f1205b85-0db0-44b3-831d-3fadaba93abf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"}}},"level":"info","message":"received a callback","requestID":"db1975726842da2eab796b5dd1ec9723"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bd596710-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22a76311-7694-49e8-81f9-79b75429458f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cba7b65e-fd5e-495c-adb8-679f2581b709","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.7089832} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.114439,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd596710-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","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":"bd596710-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bd596710-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/22a76311-7694-49e8-81f9-79b75429458f 200 8ms","method":"GET","requestID":"bd596710-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"db1975726842da2eab796b5dd1ec9723","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"db1975726842da2eab796b5dd1ec9723"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd5d1090-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3158fc4a-e547-4e99-8e86-96f2e6e8c8d8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.7330043} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.199991,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd5d1090-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","rebac_allow":false,"scope_allow":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":"bd5d1090-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd5d1090-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling 200 8ms","method":"POST","requestID":"bd5d1090-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd5e7020-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdd41133-1c65-4f1e-a700-611082e73270","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.743047} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.181973,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd5e7020-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","rebac_allow":false,"scope_allow":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":"bd5e7020-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd5e7020-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling 200 9ms","method":"POST","requestID":"bd5e7020-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis","level":"info","message":"auth send jwt","requestID":"faf668c84e9fcb01b6e62c5879aeb05d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"faf668c84e9fcb01b6e62c5879aeb05d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","requestID":"faf668c84e9fcb01b6e62c5879aeb05d"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.956982,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"faf668c84e9fcb01b6e62c5879aeb05d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835528,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"faf668c84e9fcb01b6e62c5879aeb05d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","requestID":"faf668c84e9fcb01b6e62c5879aeb05d"} gateway-1 | {"time_local":"28/Aug/2024:08:58:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"faf668c84e9fcb01b6e62c5879aeb05d"} experiment-1 | {"level":"info","message":"GET /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828 200 9ms","method":"GET","requestID":"faf668c84e9fcb01b6e62c5879aeb05d","responseTime":9,"status":200,"url":"/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis","level":"info","message":"auth send jwt","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95e9544b8ec4c63cd41bd07505f78fd3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.697543,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"95e9544b8ec4c63cd41bd07505f78fd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835528,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"95e9544b8ec4c63cd41bd07505f78fd3","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Attempting to finish experiment","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.692772,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835528,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f","device":"f1205b85-0db0-44b3-831d-3fadaba93abf","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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":"1437d47b-9d3f-4de0-a6b7-c93ac73196ac","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/22a76311-7694-49e8-81f9-79b75429458f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22a76311-7694-49e8-81f9-79b75429458f': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22a76311-7694-49e8-81f9-79b75429458f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"5a0bad56-54a5-4c6e-aa42-fd85f7bd51a4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.8350122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69bec06e-103c-4f0d-9a42-42ba7583c043","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.835325} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2cb5cc40bf2498f0c59156fb4d341993","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2cb5cc40bf2498f0c59156fb4d341993","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4622ffe4e71e2059ed80a8cd84e6fe68","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4622ffe4e71e2059ed80a8cd84e6fe68","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"},{"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/f1205b85-0db0-44b3-831d-3fadaba93abf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"}}},"level":"info","message":"received a callback","requestID":"2cb5cc40bf2498f0c59156fb4d341993"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac"},{"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/f1205b85-0db0-44b3-831d-3fadaba93abf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"}}},"level":"info","message":"received a callback","requestID":"4622ffe4e71e2059ed80a8cd84e6fe68"} device-1 | {"data":{"peerconnection":"22a76311-7694-49e8-81f9-79b75429458f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/22a76311-7694-49e8-81f9-79b75429458f 204 34ms","method":"DELETE","requestID":"bd6b1a50-651b-11ef-b0da-d12cff5a1914","responseTime":34,"status":204,"url":"/peerconnections/22a76311-7694-49e8-81f9-79b75429458f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"},"level":"info","message":"Successfully finished experiment","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd729460-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1437d47b-9d3f-4de0-a6b7-c93ac73196ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2df5de71-17ae-4259-977d-e084a2d98c99","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.8744738} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.203037,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd729460-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac","object_type":"device","rebac_allow":false,"scope_allow":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":"bd729460-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd729460-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling 200 8ms","method":"POST","requestID":"bd729460-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd741b00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff1205b85-0db0-44b3-831d-3fadaba93abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da0d1c40-6c20-44b4-8c24-c9c2fb3559b6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.8844538} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43108,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bd741b00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf","object_type":"device","rebac_allow":false,"scope_allow":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":"bd741b00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"960d6514-b370-4bf2-9965-dbee44b84c70","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.8867683} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F606bfd31-ee7c-4c0a-bd2b-4e4d390fe828': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"307a6b16-f38e-4596-98a1-c9051d9863b5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.8874521} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"95e9544b8ec4c63cd41bd07505f78fd3","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd741b00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling 200 9ms","method":"POST","requestID":"bd741b00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/f1205b85-0db0-44b3-831d-3fadaba93abf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} gateway-1 | {"time_local":"28/Aug/2024:08:58:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95e9544b8ec4c63cd41bd07505f78fd3"} gateway-1 | {"time_local":"28/Aug/2024:08:58:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3192","request_time":"3.968","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"75e0a862948e05345ce924961c3cb623"} experiment-1 | {"level":"info","message":"DELETE /experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828 204 137ms","method":"DELETE","requestID":"95e9544b8ec4c63cd41bd07505f78fd3","responseTime":137,"status":204,"url":"/experiments/606bfd31-ee7c-4c0a-bd2b-4e4d390fe828"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"2cb5cc40bf2498f0c59156fb4d341993","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"2cb5cc40bf2498f0c59156fb4d341993"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis","level":"info","message":"auth send jwt","requestID":"f605c08990509588e1731d7418785214"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f605c08990509588e1731d7418785214","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f605c08990509588e1731d7418785214"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.747556,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f605c08990509588e1731d7418785214","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835528,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOH0.Ta8dsYamyy4d98VUTzF19rbeY2gVxcpq7dE_m6ypgis"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"28/Aug/2024:08:58:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.617","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"786ca1589ee268f728d5e1ed2e4ef742"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"4622ffe4e71e2059ed80a8cd84e6fe68","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"4622ffe4e71e2059ed80a8cd84e6fe68"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1437d47b-9d3f-4de0-a6b7-c93ac73196ac' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6d0400e5-f45b-48d2-a608-0d4016700758","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.9819076} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b859703-7215-4f31-b5e1-970e755bd097","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.9872286} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f1205b85-0db0-44b3-831d-3fadaba93abf' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"2352d8d6-e368-40d4-a2b8-afaf0a60d5c2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.9967244} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9661cb40-acf9-43b2-9c92-1da7cb2e04bd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835528.9970272} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"12505d15-c67d-4b4c-961e-ed02385af09b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.001479} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f605c08990509588e1731d7418785214"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f605c08990509588e1731d7418785214"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"f605c08990509588e1731d7418785214","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM","level":"info","message":"auth send jwt","requestID":"2215494bc7a60c181663ac0c5adea7fb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"2215494bc7a60c181663ac0c5adea7fb","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2215494bc7a60c181663ac0c5adea7fb"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.136071,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2215494bc7a60c181663ac0c5adea7fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835529,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c1376815-0bef-487f-8c88-e9ecc112196c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.0391717} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e82cc588-0d33-4104-b37c-08f25ff9e41c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.045291} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"1f0b1723-9ce6-4346-81a9-b2d77bd403f8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.0613706} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb0a9e7-2d86-43a0-b822-7e819beb2167","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.0614464} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:49.061337375Z"}]},"request_id":"dad885f2-4002-48c3-8ffe-e71df42ece5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.0652497} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2215494bc7a60c181663ac0c5adea7fb"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2215494bc7a60c181663ac0c5adea7fb"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"2215494bc7a60c181663ac0c5adea7fb","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM","level":"info","message":"auth send jwt","requestID":"555ea263d99cff06f380b7510d2cdcf0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"555ea263d99cff06f380b7510d2cdcf0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"555ea263d99cff06f380b7510d2cdcf0"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745413,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"555ea263d99cff06f380b7510d2cdcf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835529,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"555ea263d99cff06f380b7510d2cdcf0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"9b230998-0aac-461d-b076-26177a65ebd6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.7105033} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"555ea263d99cff06f380b7510d2cdcf0","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d90a828a-7b47-4d70-ae3c-2b2e7415f773","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.7158232} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"555ea263d99cff06f380b7510d2cdcf0","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"1db9cd28-9236-46d1-9dbd-42db796954dd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835529.727866} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"555ea263d99cff06f380b7510d2cdcf0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"555ea263d99cff06f380b7510d2cdcf0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/57b08af6-88a8-4a62-9427-6515c6a508e8 200 30ms","method":"PATCH","requestID":"555ea263d99cff06f380b7510d2cdcf0","responseTime":30,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8"} gateway-1 | {"time_local":"28/Aug/2024:08:58:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/57b08af6-88a8-4a62-9427-6515c6a508e8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"555ea263d99cff06f380b7510d2cdcf0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM","level":"info","message":"auth send jwt","requestID":"6428950d4e1499254e07b0aa444a742e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6428950d4e1499254e07b0aa444a742e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6428950d4e1499254e07b0aa444a742e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.095313,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6428950d4e1499254e07b0aa444a742e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835529,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUyOX0.SpO6a3XcVtXuSN5Ud-g0KpXcI4vfE8IH8_iNGKFvkNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6428950d4e1499254e07b0aa444a742e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6428950d4e1499254e07b0aa444a742e"} gateway-1 | {"time_local":"28/Aug/2024:08:58:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6428950d4e1499254e07b0aa444a742e"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/websocket 200 17ms","method":"POST","requestID":"6428950d4e1499254e07b0aa444a742e","responseTime":17,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84c9e2c6b90e7a067b5893e3eac806db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"84c9e2c6b90e7a067b5893e3eac806db","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/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":"84c9e2c6b90e7a067b5893e3eac806db"} device-1 | {"level":"info","message":"OPTIONS /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/websocket 200 0ms","method":"OPTIONS","requestID":"84c9e2c6b90e7a067b5893e3eac806db","responseTime":0,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"0e632bfc138fd6937dfd0da08af8a36f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e632bfc138fd6937dfd0da08af8a36f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0e632bfc138fd6937dfd0da08af8a36f"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.823853,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0e632bfc138fd6937dfd0da08af8a36f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e632bfc138fd6937dfd0da08af8a36f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0e632bfc138fd6937dfd0da08af8a36f"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/websocket 200 17ms","method":"POST","requestID":"0e632bfc138fd6937dfd0da08af8a36f","responseTime":17,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/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":"0e632bfc138fd6937dfd0da08af8a36f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"2abcbb38812bbe37708511e7d710e574"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2abcbb38812bbe37708511e7d710e574","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2abcbb38812bbe37708511e7d710e574"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648335,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"2abcbb38812bbe37708511e7d710e574","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2abcbb38812bbe37708511e7d710e574","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"85e2ea76-50b8-4ff5-8545-d6b4dfc783f7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.121275} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2abcbb38812bbe37708511e7d710e574","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2abcbb38812bbe37708511e7d710e574"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2abcbb38812bbe37708511e7d710e574"} device-1 | {"level":"info","message":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? 200 9ms","method":"GET","requestID":"2abcbb38812bbe37708511e7d710e574","responseTime":9,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"290628db3b8f001defca248256d91410"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"290628db3b8f001defca248256d91410","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"290628db3b8f001defca248256d91410"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631937,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"290628db3b8f001defca248256d91410","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"290628db3b8f001defca248256d91410","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:49.061337375Z"}]},"request_id":"329ef1f2-419b-4106-9d11-e004755cdcd4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.1350436} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"290628db3b8f001defca248256d91410","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"290628db3b8f001defca248256d91410"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"290628db3b8f001defca248256d91410"} device-1 | {"level":"info","message":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? 200 8ms","method":"GET","requestID":"290628db3b8f001defca248256d91410","responseTime":8,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d5bd10d764a40ade3d75e2f70670fe4b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.648455,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d5bd10d764a40ade3d75e2f70670fe4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d5bd10d764a40ade3d75e2f70670fe4b","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to run experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to book experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully booked experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bed18820-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69656,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.57185,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bed18820-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bed18820-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"705c3476-60da-4790-8f41-a57a712248d2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.176126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:49.061337375Z"}]},"request_id":"57a107f7-7dd9-4284-9874-9989c99af91e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.1767058} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bed18820-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? 200 12ms","method":"GET","requestID":"bed13a00-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bed18820-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? 200 11ms","method":"GET","requestID":"bed18820-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Setting up experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully set up experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully running experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf2bb610-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714601,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776071,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96ff5927-2a06-44dc-b817-3149b699e52b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.768115} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.099068,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf2bb610-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","rebac_allow":false,"scope_allow":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":"bf2bb610-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"64908413-72d0-425b-870c-a91b5523a802","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.7693307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:49.061337375Z"}]},"request_id":"b32a6172-9a46-4c62-bdc0-77b50dc146c1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.77052} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? 200 20ms","method":"GET","requestID":"bf2b19d0-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf2bb610-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling 200 16ms","method":"POST","requestID":"bf2bb610-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff15764b5-f4a3-4856-9df2-1143fb96a3dc#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff15764b5-f4a3-4856-9df2-1143fb96a3dc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"8434f5f2-84cd-4347-9b04-7ed2c8376d0d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.777491} device-1 | {"level":"info","message":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? 200 20ms","method":"GET","requestID":"bf2b40e0-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c4fa5f6-84ea-4102-8074-e7b699f42c2d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.7778535} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf2e9c40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d5bd10d764a40ade3d75e2f70670fe4b","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf2eea60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51b2c9b7-2c1e-43c7-8e79-90f6106f3df0","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.784815} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.700154,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf2e9c40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","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/f15764b5-f4a3-4856-9df2-1143fb96a3dc","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf2e9c40-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2b4f9159-ca3d-45aa-b0d9-c7942588eadd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.7862492} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.726648,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.649","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 644ms","method":"POST","requestID":"d5bd10d764a40ade3d75e2f70670fe4b","responseTime":644,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf2eea60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf2eea60-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf2e9c40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling 200 10ms","method":"POST","requestID":"bf2e9c40-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf2eea60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling 200 9ms","method":"POST","requestID":"bf2eea60-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"e36119385a6b7ff16ff8cbd5da391192"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e36119385a6b7ff16ff8cbd5da391192","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf309810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e36119385a6b7ff16ff8cbd5da391192"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.486775,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e36119385a6b7ff16ff8cbd5da391192","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e36119385a6b7ff16ff8cbd5da391192","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f51ec8e-9c60-429d-9573-6dd6ccadb900","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.7976918} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.986287,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf309810-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf309810-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:48.996695451Z"}]},"request_id":"bf0bf0af-50a4-4922-93e7-d7c922dc5186","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8014593} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf309810-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling 200 9ms","method":"POST","requestID":"bf309810-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e36119385a6b7ff16ff8cbd5da391192","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Building connection plan","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} 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":"52248a97-1322-44db-a952-d83704b51b08"},{"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":"1238d90d-17e2-4f37-bce9-565619fc8b11"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"163b7776-82aa-4e27-a603-2c5081e0c559"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} 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/0dfbeb38-765a-4155-8f00-e1dcaa47858b"},{"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/57b08af6-88a8-4a62-9427-6515c6a508e8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e36119385a6b7ff16ff8cbd5da391192"} device-1 | {"level":"info","message":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? 200 12ms","method":"GET","requestID":"e36119385a6b7ff16ff8cbd5da391192","responseTime":12,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57b08af6-88a8-4a62-9427-6515c6a508e8? 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":"e36119385a6b7ff16ff8cbd5da391192"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.719347,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc","level":"info","message":"auth send jwt","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694916,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835531,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzMX0.9zq6d-3XaXejpG3VR1Laz7ai-3nxBiONeI0lXnBQTgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"1aabd0b6-2942-4887-9740-088a7f829103","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8154957} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f9c40bd-c84d-497b-817a-58eecb7d6d0c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8156872} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:49.061337375Z"}]},"request_id":"e62fcfbd-2c4e-48ae-82fb-6d2edb7c4647","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8187957} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa'","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa'","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914","responseTime":22,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0"} gateway-1 | {"time_local":"28/Aug/2024:08:58:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? 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":"cbf83f63ef519f63cb60bbdd3dc03ff0"} device-1 | {"level":"info","message":"GET /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b? 200 15ms","method":"GET","requestID":"cbf83f63ef519f63cb60bbdd3dc03ff0","responseTime":15,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bf3245c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","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/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d5bd10d764a40ade3d75e2f70670fe4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf39e6e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cca3e589-64bd-4bca-9fc7-93951bef419f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8580434} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.228485,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf39e6e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","rebac_allow":false,"scope_allow":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":"bf39e6e0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf39e6e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling 200 8ms","method":"POST","requestID":"bf39e6e0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf3b4670-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e69aab35-46b5-4a52-8134-8c0ef16ce334","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835531.8675284} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.384308,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bf3b4670-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","rebac_allow":false,"scope_allow":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":"bf3b4670-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf3b4670-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling 200 9ms","method":"POST","requestID":"bf3b4670-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling"} device-1 | {"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3513623024389677722 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:sceS\r\na=ice-pwd:ZTaFe4YdWvp+BvL+nSpIUrbm\r\na=ice-options:trickle\r\na=fingerprint:sha-256 61:B8:84:97:30:81:A7:09:67:6C:BE:0F:CB:09:25:64:C4:82:86:64:4A:4B:E4:6F:66:1F:09:29:B8:D4:4C:ED\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4174127004 1 udp 2113937151 4efbefdf-acc3-4a02-976e-d0e938bbe0a0.local 50942 typ host generation 0 ufrag sceS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"57b08af6-88a8-4a62-9427-6515c6a508e8","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 | {"content":{"candidate":"candidate:2095150563 1 udp 1677729535 141.24.211.56 50942 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag sceS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","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/56a2461a-d012-4240-a010-06631b2ae7fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","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/0dfbeb38-765a-4155-8f00-e1dcaa47858b'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e709075bed1c3e4de800c847e62cc94d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e709075bed1c3e4de800c847e62cc94d","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/0dfbeb38-765a-4155-8f00-e1dcaa47858b"},{"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/57b08af6-88a8-4a62-9427-6515c6a508e8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"}}},"level":"info","message":"received a callback","requestID":"e709075bed1c3e4de800c847e62cc94d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"e709075bed1c3e4de800c847e62cc94d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"e709075bed1c3e4de800c847e62cc94d"} device-1 | {"device":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","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/56a2461a-d012-4240-a010-06631b2ae7fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2e975cf59f53b6e8a3a5d9fba1e6135","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a2e975cf59f53b6e8a3a5d9fba1e6135","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/0dfbeb38-765a-4155-8f00-e1dcaa47858b"},{"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/57b08af6-88a8-4a62-9427-6515c6a508e8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"}}},"level":"info","message":"received a callback","requestID":"a2e975cf59f53b6e8a3a5d9fba1e6135"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c07a5620-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56a2461a-d012-4240-a010-06631b2ae7fa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dca680e0-7895-456c-98e0-1e28e3c6e4bc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835533.958776} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.062833,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c07a5620-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","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":"c07a5620-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c07a5620-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa 200 8ms","method":"GET","requestID":"c07a5620-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"a2e975cf59f53b6e8a3a5d9fba1e6135","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2e975cf59f53b6e8a3a5d9fba1e6135"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c07d6360-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7554acbf-3faa-4ca9-8a93-3d6905caf370","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835533.9782534} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.18757,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c07d6360-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c07d6360-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c07d6360-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling 200 8ms","method":"POST","requestID":"c07d6360-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c07eea00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb2575c7-6d02-4c7e-ac28-3bce90ab57c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835533.9873877} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.019969,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c07eea00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c07eea00-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c07eea00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling 200 7ms","method":"POST","requestID":"c07eea00-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.680991,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768"} experiment-1 | {"level":"info","message":"GET /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc 200 10ms","method":"GET","requestID":"e8031a2ac2b8f1d8b6ddce24da5fc768","responseTime":10,"status":200,"url":"/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"f426d08b241172438226d637277e05ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f426d08b241172438226d637277e05ae","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","requestID":"f426d08b241172438226d637277e05ae"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.844752,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f426d08b241172438226d637277e05ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f426d08b241172438226d637277e05ae","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Attempting to finish experiment","requestID":"f426d08b241172438226d637277e05ae"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.64613,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa","device":"0dfbeb38-765a-4155-8f00-e1dcaa47858b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"57b08af6-88a8-4a62-9427-6515c6a508e8","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":"57b08af6-88a8-4a62-9427-6515c6a508e8","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/56a2461a-d012-4240-a010-06631b2ae7fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b4dac9ec736dd0e9277e93d37564b25","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56a2461a-d012-4240-a010-06631b2ae7fa': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F56a2461a-d012-4240-a010-06631b2ae7fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"8158db2a-7db0-40b4-aa27-f0e00babe176","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.0654144} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2b4dac9ec736dd0e9277e93d37564b25","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"781f59a151111a43eb3ef937967b2312","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b"},{"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/57b08af6-88a8-4a62-9427-6515c6a508e8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"}}},"level":"info","message":"received a callback","requestID":"2b4dac9ec736dd0e9277e93d37564b25"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"781f59a151111a43eb3ef937967b2312","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":"connected","url":"http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b"},{"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/57b08af6-88a8-4a62-9427-6515c6a508e8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"}}},"level":"info","message":"received a callback","requestID":"781f59a151111a43eb3ef937967b2312"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ac9b1b0-cb14-42c6-a404-bf20c59cdb5e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.0685} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"56a2461a-d012-4240-a010-06631b2ae7fa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa 204 37ms","method":"DELETE","requestID":"c088ae00-651b-11ef-b0da-d12cff5a1914","responseTime":37,"status":204,"url":"/peerconnections/56a2461a-d012-4240-a010-06631b2ae7fa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"},"level":"info","message":"Successfully finished experiment","requestID":"f426d08b241172438226d637277e05ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c0904f20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0dfbeb38-765a-4155-8f00-e1dcaa47858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7eea3026-4ac0-4fec-bfaa-9888a14bff38","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.1029875} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.16001,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c0904f20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0904f20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c0904f20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling 200 9ms","method":"POST","requestID":"c0904f20-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/0dfbeb38-765a-4155-8f00-e1dcaa47858b/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff15764b5-f4a3-4856-9df2-1143fb96a3dc': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff15764b5-f4a3-4856-9df2-1143fb96a3dc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"324df13a-1ce0-4b1f-8ee2-952294a6066d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.106925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34d07d27-57bd-42ca-b49f-7aae411eebe3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.1072521} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f426d08b241172438226d637277e05ae","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c091fcd0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57b08af6-88a8-4a62-9427-6515c6a508e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0dd8ab58-6ebf-462f-93ee-801f5c4e498c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.1133614} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.297691,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c091fcd0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c091fcd0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c091fcd0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling 200 8ms","method":"POST","requestID":"c091fcd0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/57b08af6-88a8-4a62-9427-6515c6a508e8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc","requestID":"f426d08b241172438226d637277e05ae"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f426d08b241172438226d637277e05ae"} experiment-1 | {"level":"info","message":"DELETE /experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc 204 130ms","method":"DELETE","requestID":"f426d08b241172438226d637277e05ae","responseTime":130,"status":204,"url":"/experiments/f15764b5-f4a3-4856-9df2-1143fb96a3dc"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2801","request_time":"4.412","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8b8a5925561939055c89d02ed46603a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"94ad745d754dae1acadfb6babe97b05b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"2b4dac9ec736dd0e9277e93d37564b25","responseTime":108,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"94ad745d754dae1acadfb6babe97b05b","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"2b4dac9ec736dd0e9277e93d37564b25"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"781f59a151111a43eb3ef937967b2312","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"781f59a151111a43eb3ef937967b2312"} device-1 | {"level":"info","message":"postDevices called","requestID":"94ad745d754dae1acadfb6babe97b05b"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"3.081","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9ad0d78ed4df477799ec24da7b735d29"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.401325,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94ad745d754dae1acadfb6babe97b05b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/57b08af6-88a8-4a62-9427-6515c6a508e8' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","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/0dfbeb38-765a-4155-8f00-e1dcaa47858b' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"947526f9-656f-41c2-815c-fa4400af9858","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.1962223} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e024e4e5-5dee-4d3a-b12b-aa03cea15732","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2012434} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"dc505204-6296-4985-a880-fe988082d835","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2150424} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09133cf9-0601-4509-bf3d-932d357ea971","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2152512} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"bf53f633-a554-4b3a-bc0b-9e28af73cf6c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2206087} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"94ad745d754dae1acadfb6babe97b05b"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94ad745d754dae1acadfb6babe97b05b"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"94ad745d754dae1acadfb6babe97b05b","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"3e63ca4ffb0d4392a036516d638a047c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e63ca4ffb0d4392a036516d638a047c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3e63ca4ffb0d4392a036516d638a047c"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.882423,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3e63ca4ffb0d4392a036516d638a047c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"89e8fd9c-5e60-41fc-85ea-f36d462978aa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2487755} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d12228c8-53e6-4c24-94c8-0d4fb71087d3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2537453} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"69841329-1784-4b52-ab54-c9bcf1d0c4ee","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2647858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc10360a-ca1c-4bfe-8845-8b521b2f9b03","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2649913} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"47e53f0a-2b2b-4e12-9036-95786bfb3f92","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.2695076} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3e63ca4ffb0d4392a036516d638a047c"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e63ca4ffb0d4392a036516d638a047c"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"3e63ca4ffb0d4392a036516d638a047c","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"8d072a30988ae988a273bea802e83d67"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8d072a30988ae988a273bea802e83d67","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8d072a30988ae988a273bea802e83d67"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990798,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8d072a30988ae988a273bea802e83d67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8d072a30988ae988a273bea802e83d67","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"5faf00a9-3ad4-406f-a6a7-69d001723ea5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.8342433} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8d072a30988ae988a273bea802e83d67","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"93b871b895fbaed6fb932f293727282b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"93b871b895fbaed6fb932f293727282b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"93b871b895fbaed6fb932f293727282b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9585b656-09d7-4c96-9a82-476f4dea42e2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.8394535} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8d072a30988ae988a273bea802e83d67","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739804,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"93b871b895fbaed6fb932f293727282b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"93b871b895fbaed6fb932f293727282b","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"05d19643-bad6-47d3-a757-bdb9bd3bdadb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.8495991} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8d072a30988ae988a273bea802e83d67","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"742d24d8-a467-41c1-b29f-03dfcb921cca","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.8510199} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8d072a30988ae988a273bea802e83d67"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93b871b895fbaed6fb932f293727282b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1 200 27ms","method":"PATCH","requestID":"8d072a30988ae988a273bea802e83d67","responseTime":27,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8d072a30988ae988a273bea802e83d67"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"427112c459d6b83254dd653e21e420c3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"427112c459d6b83254dd653e21e420c3","responseTime":3,"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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41ed45b3-68c1-4dcd-8e78-ff2221d3914a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.857108} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"427112c459d6b83254dd653e21e420c3"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"93b871b895fbaed6fb932f293727282b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746909,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"427112c459d6b83254dd653e21e420c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"427112c459d6b83254dd653e21e420c3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"f7cfaf04-400f-479f-acc9-af96f5dfd376","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.8659773} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"93b871b895fbaed6fb932f293727282b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"93b871b895fbaed6fb932f293727282b"} device-1 | {"level":"info","message":"PATCH /devices/a99e14e1-ebc8-498f-8310-356242ded3d2 200 29ms","method":"PATCH","requestID":"93b871b895fbaed6fb932f293727282b","responseTime":29,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a99e14e1-ebc8-498f-8310-356242ded3d2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"93b871b895fbaed6fb932f293727282b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"3fcb36ff627b6ee89c209293d4d6850a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"427112c459d6b83254dd653e21e420c3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fcb36ff627b6ee89c209293d4d6850a","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"427112c459d6b83254dd653e21e420c3"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/websocket 200 15ms","method":"POST","requestID":"427112c459d6b83254dd653e21e420c3","responseTime":15,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3fcb36ff627b6ee89c209293d4d6850a"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790627,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3fcb36ff627b6ee89c209293d4d6850a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3fcb36ff627b6ee89c209293d4d6850a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3fcb36ff627b6ee89c209293d4d6850a"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/websocket 200 24ms","method":"POST","requestID":"3fcb36ff627b6ee89c209293d4d6850a","responseTime":24,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3fcb36ff627b6ee89c209293d4d6850a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"81a0f9636563836cb196d85cfeeb6f7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81a0f9636563836cb196d85cfeeb6f7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81a0f9636563836cb196d85cfeeb6f7d"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828035,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"81a0f9636563836cb196d85cfeeb6f7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81a0f9636563836cb196d85cfeeb6f7d","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"e5c6ceb0-72e4-4454-8100-357722856d0a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.9217956} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81a0f9636563836cb196d85cfeeb6f7d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81a0f9636563836cb196d85cfeeb6f7d"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 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":"81a0f9636563836cb196d85cfeeb6f7d"} device-1 | {"level":"info","message":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 200 12ms","method":"GET","requestID":"81a0f9636563836cb196d85cfeeb6f7d","responseTime":12,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"79ea928e0a7a7d4ead4e097b740a90e1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79ea928e0a7a7d4ead4e097b740a90e1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79ea928e0a7a7d4ead4e097b740a90e1"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.474037,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"79ea928e0a7a7d4ead4e097b740a90e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79ea928e0a7a7d4ead4e097b740a90e1","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"e9276afb-01c9-4efb-98d1-2a70173525fd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.9407325} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"79ea928e0a7a7d4ead4e097b740a90e1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79ea928e0a7a7d4ead4e097b740a90e1"} gateway-1 | {"time_local":"28/Aug/2024:08:58:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 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":"79ea928e0a7a7d4ead4e097b740a90e1"} device-1 | {"level":"info","message":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 200 13ms","method":"GET","requestID":"79ea928e0a7a7d4ead4e097b740a90e1","responseTime":13,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA","level":"info","message":"auth send jwt","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0c472da7b85f2ec0bbefcd38362d24eb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.64499,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0c472da7b85f2ec0bbefcd38362d24eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0c472da7b85f2ec0bbefcd38362d24eb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to run experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to book experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully booked experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1169620-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701776,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c1169620-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1169620-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671338,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"28825423-5dcb-418c-8822-51e32fda11a8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.9861405} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c1169620-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"f049a933-7506-4f9c-b652-52a825ab2a29","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835534.9871137} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1169620-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 200 13ms","method":"GET","requestID":"c1169620-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 200 12ms","method":"GET","requestID":"c116bd30-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Setting up experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully set up experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c11de920-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c11e5e50-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully running experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759691,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c11de920-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c11de920-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023637,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.110784,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf1a728e-2df3-4400-b82d-4e1c4077821d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.034837} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c11e5e50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","rebac_allow":false,"scope_allow":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":"c11e5e50-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"99ab89b5-19bd-4750-a119-61e39046c1d4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0362914} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"48862e3f-b2ab-4e31-a43c-3cefb497ca6d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0375285} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c11de920-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c11e5e50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling 200 15ms","method":"POST","requestID":"c11e5e50-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c11de920-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 200 19ms","method":"GET","requestID":"c11de920-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 200 20ms","method":"GET","requestID":"c11e1030-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1211d70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c12192a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cb3933f-b523-4bc8-a1db-e57111879113#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cb3933f-b523-4bc8-a1db-e57111879113","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"5dc5ea20-dc7e-4b61-8e3f-8a72bff58885","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.050332} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07b2a5e3-2b14-4760-b7ad-13d667cd1d7e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0506568} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"0c472da7b85f2ec0bbefcd38362d24eb","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c90310ae-0f97-46f5-ac65-4ba92330d664","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0530837} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.602838,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c1211d70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1211d70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"701a2ac9-5b7c-4ab7-b9a3-2d847f089c3a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0560098} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.511453,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c12192a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","rebac_allow":false,"scope_allow":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":"c12192a0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1211d70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling 200 11ms","method":"POST","requestID":"c1211d70-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c12192a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling 200 10ms","method":"POST","requestID":"c12192a0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling"} gateway-1 | {"time_local":"28/Aug/2024:08:58:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 112ms","method":"POST","requestID":"0c472da7b85f2ec0bbefcd38362d24eb","responseTime":112,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1238e70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNX0.q6JPvQjBuk5EUDJfgUaAnUZOWdEFey9vYN-Si0O-t38","level":"info","message":"auth send jwt","requestID":"e34a3182ac18e799d1667d38843be956"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e34a3182ac18e799d1667d38843be956","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e34a3182ac18e799d1667d38843be956"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c61d680-9aa3-4c85-b42e-bc2fa9084fd4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0677428} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.579931,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c1238e70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","rebac_allow":false,"scope_allow":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":"c1238e70-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887511,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"e34a3182ac18e799d1667d38843be956","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835535,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNX0.q6JPvQjBuk5EUDJfgUaAnUZOWdEFey9vYN-Si0O-t38"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e34a3182ac18e799d1667d38843be956","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1238e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling 200 12ms","method":"POST","requestID":"c1238e70-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Building connection plan","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} 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":"8b1519e5-1eca-42dd-8f8b-c97fe156659a"},{"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":"02c0352c-6299-44d7-b846-3866afb5b097"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"51cd6291-8582-4832-b373-0e27df7d329a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.215004549Z"}]},"request_id":"2efb7c05-a0f0-4bd2-9577-ce8747a820c2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0764778} 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/a99e14e1-ebc8-498f-8310-356242ded3d2"},{"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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e34a3182ac18e799d1667d38843be956","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e34a3182ac18e799d1667d38843be956"} gateway-1 | {"time_local":"28/Aug/2024:08:58:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 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":"e34a3182ac18e799d1667d38843be956"} device-1 | {"level":"info","message":"GET /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1? 200 16ms","method":"GET","requestID":"e34a3182ac18e799d1667d38843be956","responseTime":16,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.857974,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835534,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNH0.xh-3epYrqROy_gs5tZYcurACxgvMrH-XdDrS2CkmFVA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNX0.q6JPvQjBuk5EUDJfgUaAnUZOWdEFey9vYN-Si0O-t38","level":"info","message":"auth send jwt","requestID":"6ef08a802fdb0c233188d3550f55d1ac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ef08a802fdb0c233188d3550f55d1ac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ef08a802fdb0c233188d3550f55d1ac"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691392,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"6ef08a802fdb0c233188d3550f55d1ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835535,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzNX0.q6JPvQjBuk5EUDJfgUaAnUZOWdEFey9vYN-Si0O-t38"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ef08a802fdb0c233188d3550f55d1ac","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"306e771a-4216-4dc8-86d8-808d3fd0bbcf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0958695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d84055d-7fe9-4c2a-90ee-35ceadffef57","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0960994} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:54.264759318Z"}]},"request_id":"af4e255a-1b35-41a5-bd4d-95fda54dc47c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.0970702} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ef08a802fdb0c233188d3550f55d1ac","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ef08a802fdb0c233188d3550f55d1ac"} gateway-1 | {"time_local":"28/Aug/2024:08:58:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 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":"6ef08a802fdb0c233188d3550f55d1ac"} device-1 | {"level":"info","message":"GET /devices/a99e14e1-ebc8-498f-8310-356242ded3d2? 200 19ms","method":"GET","requestID":"6ef08a802fdb0c233188d3550f55d1ac","responseTime":19,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c'","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c'","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c125ff70-651b-11ef-b0da-d12cff5a1914"} 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":"c125ff70-651b-11ef-b0da-d12cff5a1914","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":"c125ff70-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0c472da7b85f2ec0bbefcd38362d24eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c12ed910-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8b810e3-b18c-41c3-a400-48db3921b0ad","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.1419735} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.266019,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c12ed910-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","rebac_allow":false,"scope_allow":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":"c12ed910-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c12ed910-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling 200 8ms","method":"POST","requestID":"c12ed910-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c130add0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83998e8d-b37c-4d0f-80d9-dcd21ead7214","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835535.1537514} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.02363,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c130add0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","rebac_allow":false,"scope_allow":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":"c130add0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c130add0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling 200 8ms","method":"POST","requestID":"c130add0-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling"} device-1 | {"device":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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/22863a89-a5de-4b40-ad5b-cbd2c6e7992c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"05c3cd20cdf7640a6762991b2fe3f62c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"05c3cd20cdf7640a6762991b2fe3f62c","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/a99e14e1-ebc8-498f-8310-356242ded3d2"},{"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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"}}},"level":"info","message":"received a callback","requestID":"05c3cd20cdf7640a6762991b2fe3f62c"} device-1 | {"device":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"05c3cd20cdf7640a6762991b2fe3f62c","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"05c3cd20cdf7640a6762991b2fe3f62c"} device-1 | {"device":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","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/22863a89-a5de-4b40-ad5b-cbd2c6e7992c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"220dbf775948ccdcfe998c7825c537a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"220dbf775948ccdcfe998c7825c537a2","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/a99e14e1-ebc8-498f-8310-356242ded3d2"},{"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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"}}},"level":"info","message":"received a callback","requestID":"220dbf775948ccdcfe998c7825c537a2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c274c690-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22863a89-a5de-4b40-ad5b-cbd2c6e7992c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c662055-3c6f-4229-bfd8-f99603f69d00","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.2778296} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.434255,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c274c690-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c","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":"c274c690-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c274c690-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c 200 19ms","method":"GET","requestID":"c274c690-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw","level":"info","message":"auth send jwt","requestID":"c1617ac33c91c32c668361f445ca720f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c1617ac33c91c32c668361f445ca720f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5cb3933f-b523-4bc8-a1db-e57111879113","requestID":"c1617ac33c91c32c668361f445ca720f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.724605,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c1617ac33c91c32c668361f445ca720f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835537,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c1617ac33c91c32c668361f445ca720f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 58ms","method":"POST","requestID":"220dbf775948ccdcfe998c7825c537a2","responseTime":58,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.060","http_referrer":"","http_user_agent":"node-fetch","requestID":"220dbf775948ccdcfe998c7825c537a2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c27d2b00-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5cb3933f-b523-4bc8-a1db-e57111879113","requestID":"c1617ac33c91c32c668361f445ca720f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5cb3933f-b523-4bc8-a1db-e57111879113 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1617ac33c91c32c668361f445ca720f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} experiment-1 | {"level":"info","message":"GET /experiments/5cb3933f-b523-4bc8-a1db-e57111879113 200 32ms","method":"GET","requestID":"c1617ac33c91c32c668361f445ca720f","responseTime":32,"status":200,"url":"/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7a09aa5-2f22-4001-a302-336718970335","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.3324344} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.523087,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c27d2b00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c27d2b00-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw","level":"info","message":"auth send jwt","requestID":"443399395a2518f5e457fac4460a67ca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"443399395a2518f5e457fac4460a67ca","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c27d2b00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling 200 9ms","method":"POST","requestID":"c27d2b00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5cb3933f-b523-4bc8-a1db-e57111879113","requestID":"443399395a2518f5e457fac4460a67ca"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.782464,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c27effc0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"443399395a2518f5e457fac4460a67ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835537,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"443399395a2518f5e457fac4460a67ca","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35c20869-4b8c-4100-af6c-b1eeee65a68f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.3442965} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.744906,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c27effc0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Attempting to finish experiment","requestID":"443399395a2518f5e457fac4460a67ca"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c27effc0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c2801130-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c27effc0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling 200 10ms","method":"POST","requestID":"c27effc0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.761762,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c2801130-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835537,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c2801130-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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":"a99e14e1-ebc8-498f-8310-356242ded3d2","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/22863a89-a5de-4b40-ad5b-cbd2c6e7992c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22863a89-a5de-4b40-ad5b-cbd2c6e7992c': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22863a89-a5de-4b40-ad5b-cbd2c6e7992c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"6bb30221-f248-4dab-abfd-6dacedc1d4bd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.3627226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86e42ace-f608-4c99-ae0e-72beec7ff601","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.3630247} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"186bab0cc9e0b8d40ff56e119d7d262a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"186bab0cc9e0b8d40ff56e119d7d262a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c2801130-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"80cc6220545858c19ae7f175a61de7f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2"},{"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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"}}},"level":"info","message":"received a callback","requestID":"186bab0cc9e0b8d40ff56e119d7d262a"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"80cc6220545858c19ae7f175a61de7f2","responseTime":0,"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/a99e14e1-ebc8-498f-8310-356242ded3d2"},{"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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"}}},"level":"info","message":"received a callback","requestID":"80cc6220545858c19ae7f175a61de7f2"} device-1 | {"data":{"peerconnection":"22863a89-a5de-4b40-ad5b-cbd2c6e7992c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c2801130-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c 204 61ms","method":"DELETE","requestID":"c2801130-651b-11ef-b0da-d12cff5a1914","responseTime":61,"status":204,"url":"/peerconnections/22863a89-a5de-4b40-ad5b-cbd2c6e7992c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"},"level":"info","message":"Successfully finished experiment","requestID":"443399395a2518f5e457fac4460a67ca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c28e4200-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa99e14e1-ebc8-498f-8310-356242ded3d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e651f7af-eb0c-4f12-ba10-da340eb75951","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.4441454} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220793,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c28e4200-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a99e14e1-ebc8-498f-8310-356242ded3d2","object_type":"device","rebac_allow":false,"scope_allow":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":"c28e4200-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c28e4200-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling 200 8ms","method":"POST","requestID":"c28e4200-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/a99e14e1-ebc8-498f-8310-356242ded3d2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c28fc8a0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fed84a9cb-9bd9-4364-8ecf-098bb7d7def1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6616a2d-66e2-446f-b0e3-90982b174742","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.4549208} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.180431,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c28fc8a0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c28fc8a0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c28fc8a0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling 200 9ms","method":"POST","requestID":"c28fc8a0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cb3933f-b523-4bc8-a1db-e57111879113': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5cb3933f-b523-4bc8-a1db-e57111879113","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"b2398991-0383-4f51-8bca-46f8b8ebf609","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.4613335} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20572533-b10b-4db5-a76b-96698d077ee7","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.4616904} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"443399395a2518f5e457fac4460a67ca","responseTime":24,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5cb3933f-b523-4bc8-a1db-e57111879113","requestID":"443399395a2518f5e457fac4460a67ca"} gateway-1 | {"time_local":"28/Aug/2024:08:58:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5cb3933f-b523-4bc8-a1db-e57111879113 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.222","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"443399395a2518f5e457fac4460a67ca"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.655","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"be3c7d20d9c53107aec9355397b29c40"} experiment-1 | {"level":"info","message":"DELETE /experiments/5cb3933f-b523-4bc8-a1db-e57111879113 204 218ms","method":"DELETE","requestID":"443399395a2518f5e457fac4460a67ca","responseTime":218,"status":204,"url":"/experiments/5cb3933f-b523-4bc8-a1db-e57111879113"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.680","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4f1d92552e3b53d28963353fbdc6807d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 192ms","method":"POST","requestID":"186bab0cc9e0b8d40ff56e119d7d262a","responseTime":192,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.195","http_referrer":"","http_user_agent":"node-fetch","requestID":"186bab0cc9e0b8d40ff56e119d7d262a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 192ms","method":"POST","requestID":"80cc6220545858c19ae7f175a61de7f2","responseTime":192,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.196","http_referrer":"","http_user_agent":"node-fetch","requestID":"80cc6220545858c19ae7f175a61de7f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw","level":"info","message":"auth send jwt","requestID":"1fb4aaec7f081648fe969064e9e4e929"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1fb4aaec7f081648fe969064e9e4e929","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/ed84a9cb-9bd9-4364-8ecf-098bb7d7def1' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"1fb4aaec7f081648fe969064e9e4e929"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.823631,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"1fb4aaec7f081648fe969064e9e4e929","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835537,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","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/a99e14e1-ebc8-498f-8310-356242ded3d2' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d650cb3f-5112-4e60-9d8b-8d78a15f49b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.590383} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14d00db1-d5b8-4c36-a5b7-83a098a57b08","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.5959773} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"35492826-0f17-4e04-924b-471a101f6c51","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6202981} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cf4dce1-9cd5-4f26-93b7-a16743971180","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6204286} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"d244a4df-8629-4d1b-84e2-a013155eace2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6254225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1fb4aaec7f081648fe969064e9e4e929"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.073","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1fb4aaec7f081648fe969064e9e4e929"} device-1 | {"level":"info","message":"POST /devices? 201 66ms","method":"POST","requestID":"1fb4aaec7f081648fe969064e9e4e929","responseTime":66,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw","level":"info","message":"auth send jwt","requestID":"818d7c4cb3eda3ba9be32929942856c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"818d7c4cb3eda3ba9be32929942856c7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"818d7c4cb3eda3ba9be32929942856c7"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.814591,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"818d7c4cb3eda3ba9be32929942856c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835537,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzN30.q8WSNLuDjU5VjMGwnx4GbpT0gyQ0GJKYWzove-a8zNw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ec90332c-7ea9-4a00-bd1b-76b5490f69bc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6612751} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22c65f22-a51b-4130-b875-4ce73a63cff9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6670332} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"cf780b35-cce9-4fef-99db-7c5a97c0d428","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6880605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e04a211-cd0f-4cfc-a59a-bd6f93f77e86","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6887367} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"431fae76-65ce-4a02-9bad-29d21e0f2223","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835537.6928346} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"818d7c4cb3eda3ba9be32929942856c7"} gateway-1 | {"time_local":"28/Aug/2024:08:58: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.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"818d7c4cb3eda3ba9be32929942856c7"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"818d7c4cb3eda3ba9be32929942856c7","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"3431cf6fd07506ae38807abef19ea351"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3431cf6fd07506ae38807abef19ea351","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3431cf6fd07506ae38807abef19ea351"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788534,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3431cf6fd07506ae38807abef19ea351","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3431cf6fd07506ae38807abef19ea351","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"95dce3c7-e301-4fa8-ba8b-e5c1126562c5","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.253664} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3431cf6fd07506ae38807abef19ea351","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffeaa2d5-bec6-4311-ba8e-3e9a202353d1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.2577827} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3431cf6fd07506ae38807abef19ea351","responseTime":3,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"ccc60dac57361fd945aaada887744c89"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ccc60dac57361fd945aaada887744c89","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ccc60dac57361fd945aaada887744c89"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647501,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ccc60dac57361fd945aaada887744c89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ccc60dac57361fd945aaada887744c89","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"e0552626-775d-4fd8-a673-cdf997f62491","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.278424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3431cf6fd07506ae38807abef19ea351","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"bddef6f7-c2f9-450b-9f00-eb8ed1d22a2f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.2792025} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3431cf6fd07506ae38807abef19ea351"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ccc60dac57361fd945aaada887744c89","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f 200 35ms","method":"PATCH","requestID":"3431cf6fd07506ae38807abef19ea351","responseTime":35,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3431cf6fd07506ae38807abef19ea351"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"12fe9832f1da9c7a9ce264ebbf43414f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71b94fc9-5252-4d0d-ad58-b55645d13583","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.2842288} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"12fe9832f1da9c7a9ce264ebbf43414f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ccc60dac57361fd945aaada887744c89","responseTime":3,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"12fe9832f1da9c7a9ce264ebbf43414f"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706533,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"12fe9832f1da9c7a9ce264ebbf43414f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"12fe9832f1da9c7a9ce264ebbf43414f","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"faf2bbc2-49c9-4153-8e71-a47818a73e46","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.2944217} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ccc60dac57361fd945aaada887744c89","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ccc60dac57361fd945aaada887744c89"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ccc60dac57361fd945aaada887744c89"} device-1 | {"level":"info","message":"PATCH /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf 200 33ms","method":"PATCH","requestID":"ccc60dac57361fd945aaada887744c89","responseTime":33,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"8582b482d73fc61105f501dc562eadd4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8582b482d73fc61105f501dc562eadd4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"12fe9832f1da9c7a9ce264ebbf43414f"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"12fe9832f1da9c7a9ce264ebbf43414f"} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/websocket 200 17ms","method":"POST","requestID":"12fe9832f1da9c7a9ce264ebbf43414f","responseTime":17,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8582b482d73fc61105f501dc562eadd4"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721745,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8582b482d73fc61105f501dc562eadd4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8582b482d73fc61105f501dc562eadd4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8582b482d73fc61105f501dc562eadd4"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8582b482d73fc61105f501dc562eadd4"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/websocket 200 25ms","method":"POST","requestID":"8582b482d73fc61105f501dc562eadd4","responseTime":25,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"241298d31aa8a1ad2e91c7f4b7555750"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"241298d31aa8a1ad2e91c7f4b7555750","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"241298d31aa8a1ad2e91c7f4b7555750"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855386,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"241298d31aa8a1ad2e91c7f4b7555750","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"241298d31aa8a1ad2e91c7f4b7555750","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"183158f1-e71a-4bf6-a4e1-238decff1a9e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.352645} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"241298d31aa8a1ad2e91c7f4b7555750","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"241298d31aa8a1ad2e91c7f4b7555750"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 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":"241298d31aa8a1ad2e91c7f4b7555750"} device-1 | {"level":"info","message":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 200 10ms","method":"GET","requestID":"241298d31aa8a1ad2e91c7f4b7555750","responseTime":10,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"0a550ac7eecb689e27d4f33faab6d66d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0a550ac7eecb689e27d4f33faab6d66d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a550ac7eecb689e27d4f33faab6d66d"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026997,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0a550ac7eecb689e27d4f33faab6d66d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0a550ac7eecb689e27d4f33faab6d66d","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"20beba97-5c4b-465e-8259-1b0289439a0a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.3680382} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0a550ac7eecb689e27d4f33faab6d66d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a550ac7eecb689e27d4f33faab6d66d"} device-1 | {"level":"info","message":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 200 12ms","method":"GET","requestID":"0a550ac7eecb689e27d4f33faab6d66d","responseTime":12,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf?"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 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":"0a550ac7eecb689e27d4f33faab6d66d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"94926650fe949326b8d24eea58955a0a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"94926650fe949326b8d24eea58955a0a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"94926650fe949326b8d24eea58955a0a"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.992315,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"94926650fe949326b8d24eea58955a0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94926650fe949326b8d24eea58955a0a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to run experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to book experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully booked experiment","requestID":"94926650fe949326b8d24eea58955a0a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622164,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603117,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"e8cf5817-466b-492b-9a79-830e19f336c1","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.4256368} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"75ac1d6e-2d63-42a8-966c-324090a72a08","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.4262004} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 200 13ms","method":"GET","requestID":"c3237d20-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 200 12ms","method":"GET","requestID":"c323cb40-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Setting up experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully set up experiment","requestID":"94926650fe949326b8d24eea58955a0a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c32db650-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c32e0470-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully running experiment","requestID":"94926650fe949326b8d24eea58955a0a"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121154,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.061118,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c32db650-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c32db650-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"c69b1ccf-7ed7-47d6-93b6-e252e5b23e84","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.4957101} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"38eaf747-7005-4d9e-b174-2394c48633f6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.4958544} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c32db650-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"3c205be8-cde7-492f-bfda-6a40137b16b9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.4970624} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.597828,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c32e0470-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","rebac_allow":false,"scope_allow":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":"c32e0470-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c32db650-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 200 16ms","method":"GET","requestID":"c32db650-651b-11ef-b0da-d12cff5a1914","responseTime":16,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c32e0470-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling 200 15ms","method":"POST","requestID":"c32e0470-651b-11ef-b0da-d12cff5a1914","responseTime":15,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 200 17ms","method":"GET","requestID":"c32ddd60-651b-11ef-b0da-d12cff5a1914","responseTime":17,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3309c80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c33138c0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4be503b5-dfec-4a3f-9878-f38a810e3750","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5090642} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a60307d-2ce2-4400-8894-4dff8dd920d4#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a60307d-2ce2-4400-8894-4dff8dd920d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"810432c4-27dd-491a-977b-636043fcb5af","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5094361} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1e24620-78a7-4b6d-9572-66e3444d4888","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.509783} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.960403,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c3309c80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","rebac_allow":false,"scope_allow":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":"c3309c80-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"94926650fe949326b8d24eea58955a0a","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d47b9c9-99c8-43c1-bb4c-bb3837a85692","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5124238} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.460341,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c33138c0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","rebac_allow":false,"scope_allow":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":"c33138c0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3309c80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling 200 14ms","method":"POST","requestID":"c3309c80-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c33138c0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling 200 12ms","method":"POST","requestID":"c33138c0-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"94926650fe949326b8d24eea58955a0a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c33382b0-651b-11ef-b0da-d12cff5a1914"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"94926650fe949326b8d24eea58955a0a","responseTime":144,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb7de414-56e4-4ed0-8152-f8264bea32ab","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5279255} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471397,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"a307edd9b053a4a27a9fe83744f1c3a9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a307edd9b053a4a27a9fe83744f1c3a9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c33382b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","rebac_allow":false,"scope_allow":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":"c33382b0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a307edd9b053a4a27a9fe83744f1c3a9"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840983,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c33382b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling 200 10ms","method":"POST","requestID":"c33382b0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a307edd9b053a4a27a9fe83744f1c3a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a307edd9b053a4a27a9fe83744f1c3a9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Building connection plan","requestID":"94926650fe949326b8d24eea58955a0a"} 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":"cfd8501f-3f74-4a7f-87cf-b35d992ecb97"},{"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":"9de57b55-4d62-4440-a961-870320973910"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"12fca65f-e9f4-4796-8416-ff5213abdd70"}]},"level":"info","message":"Built pairwise service configurations","requestID":"94926650fe949326b8d24eea58955a0a"} 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/d9a7b62d-498c-4a97-944f-c99f7424cd8f"},{"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/294219a3-795b-43ef-ad87-a6b6ebed3ebf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"94926650fe949326b8d24eea58955a0a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.620260930Z"}]},"request_id":"4c617717-0763-4597-84c8-9098ce9f47c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.537568} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a307edd9b053a4a27a9fe83744f1c3a9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.667216,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a307edd9b053a4a27a9fe83744f1c3a9"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 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":"a307edd9b053a4a27a9fe83744f1c3a9"} device-1 | {"level":"info","message":"GET /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f? 200 13ms","method":"GET","requestID":"a307edd9b053a4a27a9fe83744f1c3a9","responseTime":13,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k","level":"info","message":"auth send jwt","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e0fec686-3c7a-414f-a23f-70ca89d61259","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.551087} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33cee7ae-a366-4217-ad75-d719084f85b4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5512962} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.090336,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835538,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTUzOH0.E9E6M9Pw6-y2T3zwwUqzDpPzul5rsh1NA3jKGTWyb7k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:58:57.687963745Z"}]},"request_id":"106a680a-deef-4db9-8a56-6ed53f6d149e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.5597506} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530'","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530'","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} 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":"c3357e80-651b-11ef-b0da-d12cff5a1914","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038"} gateway-1 | {"time_local":"28/Aug/2024:08:58:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 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":"9b9974c6ddbc68b7f36ddcdbe6e38038"} device-1 | {"level":"info","message":"GET /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf? 200 20ms","method":"GET","requestID":"9b9974c6ddbc68b7f36ddcdbe6e38038","responseTime":20,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c3357e80-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"94926650fe949326b8d24eea58955a0a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c33ef460-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c077f86-e40b-42cc-a181-cb600f33d986","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.601894} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.21819,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c33ef460-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","rebac_allow":false,"scope_allow":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":"c33ef460-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c33ef460-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling 200 7ms","method":"POST","requestID":"c33ef460-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c34053f0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f7240bc-a839-4ecc-9553-d01d01b9f688","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835538.6119385} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254749,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:58:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c34053f0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","rebac_allow":false,"scope_allow":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":"c34053f0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c34053f0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling 200 9ms","method":"POST","requestID":"c34053f0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling"} device-1 | {"device":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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/b745a3d3-ad90-4559-a071-8e5241d15530' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b327fbfecd4329ffdc7ad848042fd5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0b327fbfecd4329ffdc7ad848042fd5d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f"},{"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/294219a3-795b-43ef-ad87-a6b6ebed3ebf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"}}},"level":"info","message":"received a callback","requestID":"0b327fbfecd4329ffdc7ad848042fd5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"0b327fbfecd4329ffdc7ad848042fd5d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"0b327fbfecd4329ffdc7ad848042fd5d"} device-1 | {"device":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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 | {"data":{"peerconnection":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"b745a3d3-ad90-4559-a071-8e5241d15530","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/b745a3d3-ad90-4559-a071-8e5241d15530' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a1c5e3f99d16ed8768052a0eb715e5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0a1c5e3f99d16ed8768052a0eb715e5a","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/d9a7b62d-498c-4a97-944f-c99f7424cd8f"},{"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/294219a3-795b-43ef-ad87-a6b6ebed3ebf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"}}},"level":"info","message":"received a callback","requestID":"0a1c5e3f99d16ed8768052a0eb715e5a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c47c2f50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb745a3d3-ad90-4559-a071-8e5241d15530","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26690dcf-d73a-440a-9d6f-2e8fb1c2f68b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.6819417} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.516516,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c47c2f50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530","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":"c47c2f50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c47c2f50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530 200 8ms","method":"GET","requestID":"c47c2f50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"0a1c5e3f99d16ed8768052a0eb715e5a","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"0a1c5e3f99d16ed8768052a0eb715e5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4809c20-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94f4dde6-8424-43e6-af82-6e687c9e9afa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.710626} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.251352,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c4809c20-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4809c20-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4809c20-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling 200 8ms","method":"POST","requestID":"c4809c20-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c48249d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b50d6f87-e849-4157-b3e6-661b71d0a6cb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.7207155} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.071998,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c48249d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","rebac_allow":false,"scope_allow":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":"c48249d0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c48249d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling 200 7ms","method":"POST","requestID":"c48249d0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4","level":"info","message":"auth send jwt","requestID":"dad07a1fd632b3d7135972fd380c1f27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dad07a1fd632b3d7135972fd380c1f27","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","requestID":"dad07a1fd632b3d7135972fd380c1f27"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.446299,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"dad07a1fd632b3d7135972fd380c1f27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835540,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dad07a1fd632b3d7135972fd380c1f27","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","requestID":"dad07a1fd632b3d7135972fd380c1f27"} gateway-1 | {"time_local":"28/Aug/2024:08:59:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dad07a1fd632b3d7135972fd380c1f27"} experiment-1 | {"level":"info","message":"GET /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4 200 9ms","method":"GET","requestID":"dad07a1fd632b3d7135972fd380c1f27","responseTime":9,"status":200,"url":"/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4","level":"info","message":"auth send jwt","requestID":"4c2af1338de7d0062514f2976ea91680"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4c2af1338de7d0062514f2976ea91680","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","requestID":"4c2af1338de7d0062514f2976ea91680"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.694444,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"4c2af1338de7d0062514f2976ea91680","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835540,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4c2af1338de7d0062514f2976ea91680","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Attempting to finish experiment","requestID":"4c2af1338de7d0062514f2976ea91680"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c48d6d60-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.71623,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c48d6d60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835540,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c48d6d60-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"device":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"d9a7b62d-498c-4a97-944f-c99f7424cd8f","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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":"294219a3-795b-43ef-ad87-a6b6ebed3ebf","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/b745a3d3-ad90-4559-a071-8e5241d15530' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb745a3d3-ad90-4559-a071-8e5241d15530': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb745a3d3-ad90-4559-a071-8e5241d15530","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"f8076f55-287d-4837-9436-3e729f0bdb31","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8038843} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3eeb2ef1d1688e3f0285df7a80cf2d89","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3eeb2ef1d1688e3f0285df7a80cf2d89","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"214da8f6-39b8-4e22-84ab-66e056395b73","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8042696} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"46cb5ccb900eeb6f616dec9cefd8269c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c48d6d60-651b-11ef-b0da-d12cff5a1914","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":"closed","url":"http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f"},{"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/294219a3-795b-43ef-ad87-a6b6ebed3ebf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"}}},"level":"info","message":"received a callback","requestID":"3eeb2ef1d1688e3f0285df7a80cf2d89"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"46cb5ccb900eeb6f616dec9cefd8269c","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":"closed","url":"http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f"},{"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/294219a3-795b-43ef-ad87-a6b6ebed3ebf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"}}},"level":"info","message":"received a callback","requestID":"46cb5ccb900eeb6f616dec9cefd8269c"} device-1 | {"data":{"peerconnection":"b745a3d3-ad90-4559-a071-8e5241d15530","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c48d6d60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530 204 31ms","method":"DELETE","requestID":"c48d6d60-651b-11ef-b0da-d12cff5a1914","responseTime":31,"status":204,"url":"/peerconnections/b745a3d3-ad90-4559-a071-8e5241d15530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"},"level":"info","message":"Successfully finished experiment","requestID":"4c2af1338de7d0062514f2976ea91680"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c494c060-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd9a7b62d-498c-4a97-944f-c99f7424cd8f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d49a25ce-644a-43af-995d-de442f96bdfa","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8433807} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.232719,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c494c060-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f","object_type":"device","rebac_allow":false,"scope_allow":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":"c494c060-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a60307d-2ce2-4400-8894-4dff8dd920d4': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7a60307d-2ce2-4400-8894-4dff8dd920d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"ac7782df-d3a2-4b19-b6ea-2070e8552ef8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8477542} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c494c060-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c30b3ce1-2fa8-40fa-8ca9-3d60dffb06c8","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8479826} device-1 | {"level":"info","message":"POST /devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling 200 10ms","method":"POST","requestID":"c494c060-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/d9a7b62d-498c-4a97-944f-c99f7424cd8f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4c2af1338de7d0062514f2976ea91680","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4969520-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F294219a3-795b-43ef-ad87-a6b6ebed3ebf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2932a028-dc24-4915-825e-8772dd18560d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.8551948} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.843304,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c4969520-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4969520-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4969520-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling 200 10ms","method":"POST","requestID":"c4969520-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/294219a3-795b-43ef-ad87-a6b6ebed3ebf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4","requestID":"4c2af1338de7d0062514f2976ea91680"} gateway-1 | {"time_local":"28/Aug/2024:08:59:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c2af1338de7d0062514f2976ea91680"} experiment-1 | {"level":"info","message":"DELETE /experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4 204 133ms","method":"DELETE","requestID":"4c2af1338de7d0062514f2976ea91680","responseTime":133,"status":204,"url":"/experiments/7a60307d-2ce2-4400-8894-4dff8dd920d4"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.584","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"337820808354dd2245c06ea0b0a838be"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.610","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"89b6b5758c270fb643514fa5507dc499"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"3eeb2ef1d1688e3f0285df7a80cf2d89","responseTime":109,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"46cb5ccb900eeb6f616dec9cefd8269c","responseTime":109,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4","level":"info","message":"auth send jwt","requestID":"798dc6cfc54a32612e9f10b874fdd0fb"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"3eeb2ef1d1688e3f0285df7a80cf2d89"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"46cb5ccb900eeb6f616dec9cefd8269c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","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/294219a3-795b-43ef-ad87-a6b6ebed3ebf' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"798dc6cfc54a32612e9f10b874fdd0fb"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.930093,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"798dc6cfc54a32612e9f10b874fdd0fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835540,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","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/d9a7b62d-498c-4a97-944f-c99f7424cd8f' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fb96e1a9-e2ae-46f1-9f12-98005bcc761c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.9437475} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3772e2b5-c203-4bd4-a8f5-e646bbf65617","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.9502637} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"9b0a398e-7c8f-4047-970d-8e6bf5b2416e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.9776843} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"354ab767-7f13-4408-a783-2512240646ab","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.9778073} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:00.977646220Z"}]},"request_id":"b21e6a04-cea6-44b7-89cb-b765248a1429","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835540.9846356} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"798dc6cfc54a32612e9f10b874fdd0fb"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.072","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"798dc6cfc54a32612e9f10b874fdd0fb"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"798dc6cfc54a32612e9f10b874fdd0fb","responseTime":65,"status":201,"url":"/devices?"} device-1 | {"level":"info","message":"postDevices called","requestID":"f1096bd85857389245805deda76a6fad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4","level":"info","message":"auth send jwt","requestID":"f1096bd85857389245805deda76a6fad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f1096bd85857389245805deda76a6fad","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.050122,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"f1096bd85857389245805deda76a6fad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835540,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0MH0.zF3aicSN4rke1DGMODAD83XIALzOF-EKi--3vzgwOO4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4287515d-6afb-4a31-9f2a-baeac6d9d0e4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835541.0190153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ca8855d-0827-4429-b5d0-757c0e979508","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835541.024464} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"7b4257be-d5ec-4ce2-89df-e79fdd9dfff2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835541.0356324} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6abfd4da-1ade-4689-bd04-d1893c5475e9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835541.0359614} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:01.035594022Z"}]},"request_id":"2098f35c-24e7-456d-850e-b9cba9de41f4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835541.0408847} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f1096bd85857389245805deda76a6fad"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"f1096bd85857389245805deda76a6fad","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:59:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1096bd85857389245805deda76a6fad"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bcacfdbe6ba4a3e74f553c48bb818198","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bcacfdbe6ba4a3e74f553c48bb818198","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:59:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bcacfdbe6ba4a3e74f553c48bb818198"} device-1 | {"level":"info","message":"OPTIONS /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/websocket 200 1ms","method":"OPTIONS","requestID":"bcacfdbe6ba4a3e74f553c48bb818198","responseTime":1,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"253d62806519af4ac78c09d8fd31c445"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"253d62806519af4ac78c09d8fd31c445","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a4da72a60fc118dfc491726c04a3f8aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a4da72a60fc118dfc491726c04a3f8aa","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"253d62806519af4ac78c09d8fd31c445"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/44f565f2-0452-44cb-93cb-804e768ab49c/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":"a4da72a60fc118dfc491726c04a3f8aa"} device-1 | {"level":"info","message":"OPTIONS /devices/44f565f2-0452-44cb-93cb-804e768ab49c/websocket 200 1ms","method":"OPTIONS","requestID":"a4da72a60fc118dfc491726c04a3f8aa","responseTime":1,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/websocket"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826087,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"253d62806519af4ac78c09d8fd31c445","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"253d62806519af4ac78c09d8fd31c445","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"0cfaf919d0b67fede5760fb01dd3ba15"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0cfaf919d0b67fede5760fb01dd3ba15","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0cfaf919d0b67fede5760fb01dd3ba15"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671274,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0cfaf919d0b67fede5760fb01dd3ba15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0cfaf919d0b67fede5760fb01dd3ba15","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"253d62806519af4ac78c09d8fd31c445"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/websocket 200 24ms","method":"POST","requestID":"253d62806519af4ac78c09d8fd31c445","responseTime":24,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/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":"253d62806519af4ac78c09d8fd31c445"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0cfaf919d0b67fede5760fb01dd3ba15"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/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":"0cfaf919d0b67fede5760fb01dd3ba15"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/websocket 200 23ms","method":"POST","requestID":"0cfaf919d0b67fede5760fb01dd3ba15","responseTime":23,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"03d00821e25ff411100211eb49ba45a6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"03d00821e25ff411100211eb49ba45a6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03d00821e25ff411100211eb49ba45a6"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77953,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"03d00821e25ff411100211eb49ba45a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"03d00821e25ff411100211eb49ba45a6","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:00.977646220Z"}]},"request_id":"c7898490-7d57-42d6-b886-8ff59d9aefde","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.0712867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03d00821e25ff411100211eb49ba45a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03d00821e25ff411100211eb49ba45a6"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03d00821e25ff411100211eb49ba45a6"} device-1 | {"level":"info","message":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? 200 10ms","method":"GET","requestID":"03d00821e25ff411100211eb49ba45a6","responseTime":10,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"9dbead8dea3015e20905f1bb8b152369"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9dbead8dea3015e20905f1bb8b152369","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9dbead8dea3015e20905f1bb8b152369"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738085,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"9dbead8dea3015e20905f1bb8b152369","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9dbead8dea3015e20905f1bb8b152369","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:01.035594022Z"}]},"request_id":"2f7b5862-82e1-47d8-8105-f9a01196f958","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.0856736} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9dbead8dea3015e20905f1bb8b152369","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9dbead8dea3015e20905f1bb8b152369"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9dbead8dea3015e20905f1bb8b152369"} device-1 | {"level":"info","message":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? 200 9ms","method":"GET","requestID":"9dbead8dea3015e20905f1bb8b152369","responseTime":9,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ccf2870ecdc4713ede808bf27b0521c1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.739581,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ccf2870ecdc4713ede808bf27b0521c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ccf2870ecdc4713ede808bf27b0521c1","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to run experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to book experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully booked experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93394,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.943895,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:00.977646220Z"}]},"request_id":"ba9cc149-422e-426f-80e6-8bcf12d9c3de","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1310284} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:01.035594022Z"}]},"request_id":"409de6a7-47a3-4efe-9940-ef63cbaa2c13","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.131808} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? 200 13ms","method":"GET","requestID":"c5f14320-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? 200 14ms","method":"GET","requestID":"c5f16a30-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Setting up experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully set up experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5f9cea0-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully running experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172906,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.587747,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.181362,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c0ebc1e-b3bf-42d1-9e68-6df83e541906","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1834602} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5f9cea0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","rebac_allow":false,"scope_allow":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":"c5f9cea0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5f9cea0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling 200 11ms","method":"POST","requestID":"c5f9cea0-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:00.977646220Z"}]},"request_id":"a4b8382b-e6c5-4e5e-b8c6-6c1779eee33d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1899145} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:01.035594022Z"}]},"request_id":"5d11a0d9-7f10-4974-ae8b-ad79bcc5f2c6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1912277} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5fc1890-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? 200 21ms","method":"GET","requestID":"c5f95970-651b-11ef-b0da-d12cff5a1914","responseTime":21,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} device-1 | {"level":"info","message":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? 200 20ms","method":"GET","requestID":"c5f9a790-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faa131d4b-a549-4e2d-9515-4eb3a63ae538#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faa131d4b-a549-4e2d-9515-4eb3a63ae538","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"6cecbafb-29b7-4456-9a93-6714d3939b9a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1978137} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2350b40a-543f-46a7-a0c4-3d1e98659028","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1981184} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dfa3082-bf09-4afa-aaee-5c04c92e09e6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.1980991} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"ccf2870ecdc4713ede808bf27b0521c1","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.711813,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5fd2a00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5fc1890-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","rebac_allow":false,"scope_allow":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":"c5fc1890-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5fc1890-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling 200 11ms","method":"POST","requestID":"c5fc1890-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54b71b1f-b8e4-4c8e-bcf8-3abb853dd67d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.2049963} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.253349,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5fd2a00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","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":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5fd2a00-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 113ms","method":"POST","requestID":"ccf2870ecdc4713ede808bf27b0521c1","responseTime":113,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5fd2a00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling 200 9ms","method":"POST","requestID":"c5fd2a00-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"eabce29cf6e1c06818162adc9cda5343"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eabce29cf6e1c06818162adc9cda5343","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c5fefec0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eabce29cf6e1c06818162adc9cda5343"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663475,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"eabce29cf6e1c06818162adc9cda5343","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"eabce29cf6e1c06818162adc9cda5343","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e95edfe-1154-4fb0-ad26-53d9c9461e2d","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.2158184} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.252938,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c5fefec0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","rebac_allow":false,"scope_allow":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":"c5fefec0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:00.977646220Z"}]},"request_id":"217958ea-1b88-43d7-bcf0-93104ce3a320","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.2203708} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eabce29cf6e1c06818162adc9cda5343","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c5fefec0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling 200 14ms","method":"POST","requestID":"c5fefec0-651b-11ef-b0da-d12cff5a1914","responseTime":14,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eabce29cf6e1c06818162adc9cda5343"} device-1 | {"level":"info","message":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? 200 14ms","method":"GET","requestID":"eabce29cf6e1c06818162adc9cda5343","responseTime":14,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Building connection plan","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c05c7026-b3d5-4278-98dd-a054c08f33f7"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"6e960343-3531-4bc1-a383-f52f620b4636"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a09afa84-9285-42a0-bdcd-5696066b34ea"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/44f565f2-0452-44cb-93cb-804e768ab49c? 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":"eabce29cf6e1c06818162adc9cda5343"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"145b628c1fc783c93db1b65660202fbf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"145b628c1fc783c93db1b65660202fbf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"145b628c1fc783c93db1b65660202fbf"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.674816,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933147,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"145b628c1fc783c93db1b65660202fbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"145b628c1fc783c93db1b65660202fbf","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:01.035594022Z"}]},"request_id":"62aac077-2fcc-411e-adc6-07a7ffc777cc","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.256936} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"145b628c1fc783c93db1b65660202fbf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"145b628c1fc783c93db1b65660202fbf"} device-1 | {"level":"info","message":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? 200 27ms","method":"GET","requestID":"145b628c1fc783c93db1b65660202fbf","responseTime":27,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12?"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12? 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":"145b628c1fc783c93db1b65660202fbf"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"64e8b8fe-b71a-4a29-91e0-7b26ad03000e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.2650683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b65454dc-03ac-46da-8945-0c8533f940a9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.2652738} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de'","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de'","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 48ms","method":"POST","requestID":"c60196d0-651b-11ef-b0da-d12cff5a1914","responseTime":48,"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":"c60196d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","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/32f88dfc-20fb-49a5-9794-78ed7a23f3de","device":"44f565f2-0452-44cb-93cb-804e768ab49c","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/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ccf2870ecdc4713ede808bf27b0521c1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c60ce170-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} device-1 | {"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c2b7add-1a5b-484a-a1b3-bb877d93dd77","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.3086894} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.122051,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c60ce170-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","rebac_allow":false,"scope_allow":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":"c60ce170-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c60ce170-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling 200 13ms","method":"POST","requestID":"c60ce170-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c60f2b60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"content":{"sdp":"v=0\r\no=- 3754166182395592265 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:B7q8\r\na=ice-pwd:24qy0KGX7O1RRvTaMGo9BfNG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 16:69:7A:9F:3F:EB:57:51:2F:1B:6E:61:74:89:94:7C:50:67:4E:7C:F7:B2:9A:6A:70:28:53:19:46:8B:3E:2D\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fc07aaa-3877-4ec2-bbd7-eab98e4f3871","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.323113} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.088308,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c60f2b60-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","rebac_allow":false,"scope_allow":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":"c60f2b60-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c60f2b60-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling 200 11ms","method":"POST","requestID":"c60f2b60-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 2138158306719363709 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:A3wh\r\na=ice-pwd:4v/IbO0BSU8TQt1eX4YOaDqQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2C:ED:E9:33:AE:FE:EB:57:3A:E5:58:26:FB:2D:8E:AB:CA:08:90:9F:E9:39:C8:B2:E3:EE:01:D0:6A:74:26:58\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4154194361 1 udp 2113937151 6b7f3dc4-dd3f-47a3-99ba-9bdb0cce1ca9.local 40848 typ host generation 0 ufrag A3wh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","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/968e4834-e9cf-43d7-9e9c-aef3ab309d12'"} device-1 | {"content":{"candidate":"candidate:1941345222 1 udp 1677729535 141.24.211.56 40848 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag A3wh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","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/968e4834-e9cf-43d7-9e9c-aef3ab309d12'"} device-1 | {"content":{"candidate":"candidate:2562776308 1 udp 2113937151 748c8d40-654f-4f7c-8dce-0c58e41a462f.local 38841 typ host generation 0 ufrag B7q8 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:485340811 1 udp 1677729535 141.24.211.56 38841 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag B7q8 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"44f565f2-0452-44cb-93cb-804e768ab49c","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/44f565f2-0452-44cb-93cb-804e768ab49c'"} device-1 | {"device":"44f565f2-0452-44cb-93cb-804e768ab49c","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/32f88dfc-20fb-49a5-9794-78ed7a23f3de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62912c263fa3115dd226f581bd421edb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62912c263fa3115dd226f581bd421edb","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"}}},"level":"info","message":"received a callback","requestID":"62912c263fa3115dd226f581bd421edb"} device-1 | {"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"62912c263fa3115dd226f581bd421edb","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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":"62912c263fa3115dd226f581bd421edb"} device-1 | {"device":"44f565f2-0452-44cb-93cb-804e768ab49c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","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/32f88dfc-20fb-49a5-9794-78ed7a23f3de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb094ac3cf9128128eb67ae9d49c215c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb094ac3cf9128128eb67ae9d49c215c","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/968e4834-e9cf-43d7-9e9c-aef3ab309d12"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"}}},"level":"info","message":"received a callback","requestID":"cb094ac3cf9128128eb67ae9d49c215c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c61a00d0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32f88dfc-20fb-49a5-9794-78ed7a23f3de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"870fc69e-b778-4e37-922b-f9c255b87189","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.3942564} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.896328,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c61a00d0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","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":"c61a00d0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c61a00d0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de 200 9ms","method":"GET","requestID":"c61a00d0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"cb094ac3cf9128128eb67ae9d49c215c","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"cb094ac3cf9128128eb67ae9d49c215c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c61e6da0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67fdb2ea-2039-44f2-881f-deb1961d2255","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.4227157} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.936257,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c61e6da0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c61e6da0-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c61e6da0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling 200 10ms","method":"POST","requestID":"c61e6da0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6204260-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10ab0f40-4fe5-41cf-9d66-b6b85dc5441a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.4344935} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.4724,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c6204260-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6204260-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6204260-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling 200 8ms","method":"POST","requestID":"c6204260-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"3e9dd1bdbc39720169daad5e0bd63917"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e9dd1bdbc39720169daad5e0bd63917","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","requestID":"3e9dd1bdbc39720169daad5e0bd63917"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.643693,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"3e9dd1bdbc39720169daad5e0bd63917","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3e9dd1bdbc39720169daad5e0bd63917","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","requestID":"3e9dd1bdbc39720169daad5e0bd63917"} experiment-1 | {"level":"info","message":"GET /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538 200 9ms","method":"GET","requestID":"3e9dd1bdbc39720169daad5e0bd63917","responseTime":9,"status":200,"url":"/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538 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":"3e9dd1bdbc39720169daad5e0bd63917"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"de987dc056b817104f8f7e800dde0dfc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"de987dc056b817104f8f7e800dde0dfc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","requestID":"de987dc056b817104f8f7e800dde0dfc"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.647043,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"de987dc056b817104f8f7e800dde0dfc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"de987dc056b817104f8f7e800dde0dfc","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Attempting to finish experiment","requestID":"de987dc056b817104f8f7e800dde0dfc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.744988,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","device":"968e4834-e9cf-43d7-9e9c-aef3ab309d12","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de","device":"44f565f2-0452-44cb-93cb-804e768ab49c","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/32f88dfc-20fb-49a5-9794-78ed7a23f3de' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32f88dfc-20fb-49a5-9794-78ed7a23f3de': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F32f88dfc-20fb-49a5-9794-78ed7a23f3de","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"44db9186-14f0-4c5e-9ad1-c4c7536257a9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.499889} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de8bfba0-eee6-4191-90be-8bc6b5525a0c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.5002072} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41741e9bb354aba416efe085197fbeeb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"41741e9bb354aba416efe085197fbeeb","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b613e4d9d500f333db43114aaf1a2c9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/968e4834-e9cf-43d7-9e9c-aef3ab309d12"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"}}},"level":"info","message":"received a callback","requestID":"41741e9bb354aba416efe085197fbeeb"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0b613e4d9d500f333db43114aaf1a2c9","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/968e4834-e9cf-43d7-9e9c-aef3ab309d12"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"}}},"level":"info","message":"received a callback","requestID":"0b613e4d9d500f333db43114aaf1a2c9"} device-1 | {"data":{"peerconnection":"32f88dfc-20fb-49a5-9794-78ed7a23f3de","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de 204 32ms","method":"DELETE","requestID":"c628cde0-651b-11ef-b0da-d12cff5a1914","responseTime":32,"status":204,"url":"/peerconnections/32f88dfc-20fb-49a5-9794-78ed7a23f3de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"},"level":"info","message":"Successfully finished experiment","requestID":"de987dc056b817104f8f7e800dde0dfc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c63020e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F968e4834-e9cf-43d7-9e9c-aef3ab309d12","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf266ff5-1867-418e-aa02-29b19bc53db3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.5387053} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.316033,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c63020e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12","object_type":"device","rebac_allow":false,"scope_allow":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":"c63020e0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c63020e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling 200 9ms","method":"POST","requestID":"c63020e0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c631ce90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44f565f2-0452-44cb-93cb-804e768ab49c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2f7a100-3766-47c1-a187-d54f87a7ca1f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.5503793} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.544644,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c631ce90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44f565f2-0452-44cb-93cb-804e768ab49c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c631ce90-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faa131d4b-a549-4e2d-9515-4eb3a63ae538': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faa131d4b-a549-4e2d-9515-4eb3a63ae538","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"68519197-80d9-45f0-bb75-8ffb157cf336","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.5511734} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"798fab14-c7c6-4088-a262-582328f120ac","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.5515575} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"de987dc056b817104f8f7e800dde0dfc","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c631ce90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling 200 10ms","method":"POST","requestID":"c631ce90-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/44f565f2-0452-44cb-93cb-804e768ab49c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538","requestID":"de987dc056b817104f8f7e800dde0dfc"} gateway-1 | {"time_local":"28/Aug/2024:08:59:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de987dc056b817104f8f7e800dde0dfc"} experiment-1 | {"level":"info","message":"DELETE /experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538 204 124ms","method":"DELETE","requestID":"de987dc056b817104f8f7e800dde0dfc","responseTime":124,"status":204,"url":"/experiments/aa131d4b-a549-4e2d-9515-4eb3a63ae538"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"41741e9bb354aba416efe085197fbeeb","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.105","http_referrer":"","http_user_agent":"node-fetch","requestID":"41741e9bb354aba416efe085197fbeeb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 102ms","method":"POST","requestID":"0b613e4d9d500f333db43114aaf1a2c9","responseTime":102,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.104","http_referrer":"","http_user_agent":"node-fetch","requestID":"0b613e4d9d500f333db43114aaf1a2c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"a25b18965117369bdd0993dcc52b1264"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a25b18965117369bdd0993dcc52b1264","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.567","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f6f111c1f3c1c33a8b14f458dafe4b5a"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.577","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"772087c357321e39f9ac201491d94494"} device-1 | {"level":"info","message":"postDevices called","requestID":"a25b18965117369bdd0993dcc52b1264"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.002988,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"a25b18965117369bdd0993dcc52b1264","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","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/44f565f2-0452-44cb-93cb-804e768ab49c' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/968e4834-e9cf-43d7-9e9c-aef3ab309d12' 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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eeecb302-75cf-4822-b775-4dac1944ca36","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6399212} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41f7e800-ddff-4386-a3d7-4b5416094f3c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6445205} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"e750f0b7-d58b-4354-b69b-d5006a545c17","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6540189} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"daf7a955-77f4-47a5-ba69-03c954be25c2","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6542914} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.653994778Z"}]},"request_id":"f8a6f3cb-a6f6-4aab-9615-a55df8d92d45","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6582427} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a25b18965117369bdd0993dcc52b1264"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a25b18965117369bdd0993dcc52b1264"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"a25b18965117369bdd0993dcc52b1264","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8","level":"info","message":"auth send jwt","requestID":"887fd96f1824255e402100c5cbc01e3a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"887fd96f1824255e402100c5cbc01e3a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"887fd96f1824255e402100c5cbc01e3a"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.820151,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"887fd96f1824255e402100c5cbc01e3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835543,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0M30.0ZFdmtK3DxtQqRUhQ2NM8UEWN3nm52NzFgqj7YVwxM8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4f6fe62d-adf0-4fe5-a1a9-93d05bbdca7e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6798944} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a41a4e06-03bf-42be-a43b-dc136e7ac8bb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.684236} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"49f006cc-fd93-4cb3-a1e8-d24947f94e85","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6986723} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ab21409-bdfa-4320-b4f5-215c372f9256","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.6989949} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"5657a531-b193-440b-ae00-33b2f62a323c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835543.7029834} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"887fd96f1824255e402100c5cbc01e3a"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"887fd96f1824255e402100c5cbc01e3a","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"887fd96f1824255e402100c5cbc01e3a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e373487f73e5f55d97f364cbfa1f2bb1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e373487f73e5f55d97f364cbfa1f2bb1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:59:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/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":"e373487f73e5f55d97f364cbfa1f2bb1"} device-1 | {"level":"info","message":"OPTIONS /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/websocket 200 1ms","method":"OPTIONS","requestID":"e373487f73e5f55d97f364cbfa1f2bb1","responseTime":1,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ","level":"info","message":"auth send jwt","requestID":"0a28be48e7c6666285b70828d198167f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0a28be48e7c6666285b70828d198167f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0a28be48e7c6666285b70828d198167f"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678041,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"0a28be48e7c6666285b70828d198167f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"0a28be48e7c6666285b70828d198167f","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0a28be48e7c6666285b70828d198167f"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/websocket 200 17ms","method":"POST","requestID":"0a28be48e7c6666285b70828d198167f","responseTime":17,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/websocket"} gateway-1 | {"time_local":"28/Aug/2024:08:59:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0a28be48e7c6666285b70828d198167f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ","level":"info","message":"auth send jwt","requestID":"bdf960e9618688041adb4fd0d3d6ebdb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bdf960e9618688041adb4fd0d3d6ebdb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bdf960e9618688041adb4fd0d3d6ebdb"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294419,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"bdf960e9618688041adb4fd0d3d6ebdb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bdf960e9618688041adb4fd0d3d6ebdb","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"26059196-4239-4707-b02e-89f3db334d11","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.6932003} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bdf960e9618688041adb4fd0d3d6ebdb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bdf960e9618688041adb4fd0d3d6ebdb"} gateway-1 | {"time_local":"28/Aug/2024:08:59:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdf960e9618688041adb4fd0d3d6ebdb"} device-1 | {"level":"info","message":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? 200 10ms","method":"GET","requestID":"bdf960e9618688041adb4fd0d3d6ebdb","responseTime":10,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ","level":"info","message":"auth send jwt","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8c9d75f34e542c729ebb72f62dcbb66b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.644797,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"8c9d75f34e542c729ebb72f62dcbb66b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c9d75f34e542c729ebb72f62dcbb66b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to run experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to book experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully booked experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631091,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0967480-98b7-476b-bf95-b3e271f7c6da","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b0967480-98b7-476b-bf95-b3e271f7c6da","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586004,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb0967480-98b7-476b-bf95-b3e271f7c6da","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.653994778Z"}]},"request_id":"7fc066c2-619c-4589-9cbe-1c378ab85586","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.7344816} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"3b2be612-4270-4698-90ec-601672894a47","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.7353878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/b0967480-98b7-476b-bf95-b3e271f7c6da? 200 12ms","method":"GET","requestID":"c77ee800-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/b0967480-98b7-476b-bf95-b3e271f7c6da?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? 200 12ms","method":"GET","requestID":"c77f0f10-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Setting up experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.754261,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/b0967480-98b7-476b-bf95-b3e271f7c6da","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b0967480-98b7-476b-bf95-b3e271f7c6da","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"f2b58183-6700-440d-aff3-84b28e3257fd","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.782675} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"334902b3-5979-47c7-836a-97c7c990159e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.782924} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2' to 'http://localhost/callbacks/experiment'","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914"} authentication-1 | {"level":"info","message":"POST /token 201 14ms","method":"POST","requestID":"c7880fc0-651b-11ef-8b35-a16c375c6408","responseTime":14,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/b0967480-98b7-476b-bf95-b3e271f7c6da?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 45ms","method":"POST","requestID":"c783ca00-651b-11ef-b0da-d12cff5a1914","responseTime":45,"status":201,"url":"/devices/b0967480-98b7-476b-bf95-b3e271f7c6da?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully set up experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7911070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7913780-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7915e90-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully running experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:35308","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.051448,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c7911070-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7911070-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57646","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952835,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c7913780-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7913780-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.820929,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01430e2a-3b1c-47bc-9579-b33c7c224a89","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.854263} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c7915e90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","rebac_allow":false,"scope_allow":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":"c7915e90-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:05.782638184Z"}]},"request_id":"d2777b80-c7e9-4034-a560-2a74e1806a07","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.8576145} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7911070-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"a2fe18b7-f371-4172-a273-945d93ab9dcb","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.85992} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7913780-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 71106054-6c43-40aa-ad06-39097c1d05d2","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 71106054-6c43-40aa-ad06-39097c1d05d2\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/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"c7915e90-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling 404 13ms","method":"POST","requestID":"c7915e90-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":404,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 71106054-6c43-40aa-ad06-39097c1d05d2"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7911070-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/71106054-6c43-40aa-ad06-39097c1d05d2? 200 18ms","method":"GET","requestID":"c7911070-651b-11ef-b0da-d12cff5a1914","responseTime":18,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2?"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F002cd346-c5ac-42b5-82b6-9db7b2e8fa97#owner@http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F002cd346-c5ac-42b5-82b6-9db7b2e8fa97","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"81fb5fa8-76ce-48d1-a5c1-f61e0ff0da7e","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.865415} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c793cf90-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"559b5847-1c1b-449e-8c02-1a049119c214","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.8656576} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7913780-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8c9d75f34e542c729ebb72f62dcbb66b","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? 200 19ms","method":"GET","requestID":"c7913780-651b-11ef-b0da-d12cff5a1914","responseTime":19,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3?"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b16b17dc-698e-49e4-af80-338a4803145b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835545.8708131} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.425206,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"c793cf90-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"c793cf90-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","user":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c793cf90-651b-11ef-b0da-d12cff5a1914"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"8c9d75f34e542c729ebb72f62dcbb66b","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling 200 11ms","method":"POST","requestID":"c793cf90-651b-11ef-b0da-d12cff5a1914","responseTime":11,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"756018909470e38d8eaf20b8f9dad5a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"756018909470e38d8eaf20b8f9dad5a5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"28/Aug/2024:08:59:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"756018909470e38d8eaf20b8f9dad5a5"} device-1 | {"level":"info","message":"OPTIONS /devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket 200 0ms","method":"OPTIONS","requestID":"756018909470e38d8eaf20b8f9dad5a5","responseTime":0,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IkxVajhTNVNBWWItcXJENHpfbkJDbVg5MXFEcV83cVlQR3F0a1hzN1pBbmxtUWNFUU93ajlYcTZxRHByMTlBSElkX0ZaQTc2V1UtcGhaSVFVdFh5TlBBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.ckH4-Uqyd7Wt6j4Fm0lWdFWciUgt2LB3aagySJ1m7v4","level":"info","message":"auth send jwt","requestID":"d07e40865ebe8f7d229e11fabf1a7934"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d07e40865ebe8f7d229e11fabf1a7934","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d07e40865ebe8f7d229e11fabf1a7934"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224547,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"d07e40865ebe8f7d229e11fabf1a7934","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","payload":{"admin":true,"edgeToken":"LUj8S5SAYb-qrD4z_nBCmX91qDq_7qYPGqtkXs7ZAnlmQcEQOwj9Xq6qDpr19AHId_FZA76WU-phZIQUtXyNPA","iat":1724835547,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IkxVajhTNVNBWWItcXJENHpfbkJDbVg5MXFEcV83cVlQR3F0a1hzN1pBbmxtUWNFUU93ajlYcTZxRHByMTlBSElkX0ZaQTc2V1UtcGhaSVFVdFh5TlBBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.ckH4-Uqyd7Wt6j4Fm0lWdFWciUgt2LB3aagySJ1m7v4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d07e40865ebe8f7d229e11fabf1a7934","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d07e40865ebe8f7d229e11fabf1a7934"} gateway-1 | {"time_local":"28/Aug/2024:08:59:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.045","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d07e40865ebe8f7d229e11fabf1a7934"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket 200 41ms","method":"POST","requestID":"d07e40865ebe8f7d229e11fabf1a7934","responseTime":41,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/websocket"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d18f9cd27ead8ab008650c56887b6b41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d18f9cd27ead8ab008650c56887b6b41","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/71106054-6c43-40aa-ad06-39097c1d05d2"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"d18f9cd27ead8ab008650c56887b6b41"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.1g3yf1VZtWSNsNMGS4TuzeRU8tS502Cxgfw20NcJn1s","level":"info","message":"auth send jwt","requestID":"4856004d9191f34b0ec0c03b4472a1b6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4856004d9191f34b0ec0c03b4472a1b6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4856004d9191f34b0ec0c03b4472a1b6"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855524,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"4856004d9191f34b0ec0c03b4472a1b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835547,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.1g3yf1VZtWSNsNMGS4TuzeRU8tS502Cxgfw20NcJn1s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4856004d9191f34b0ec0c03b4472a1b6","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"d18f9cd27ead8ab008650c56887b6b41","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"d18f9cd27ead8ab008650c56887b6b41"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:05.782638184Z"}]},"request_id":"011248f7-e999-455b-a268-9ca35448862f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835547.8531804} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4856004d9191f34b0ec0c03b4472a1b6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4856004d9191f34b0ec0c03b4472a1b6"} gateway-1 | {"time_local":"28/Aug/2024:08:59:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/71106054-6c43-40aa-ad06-39097c1d05d2? 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":"4856004d9191f34b0ec0c03b4472a1b6"} device-1 | {"level":"info","message":"GET /devices/71106054-6c43-40aa-ad06-39097c1d05d2? 200 14ms","method":"GET","requestID":"4856004d9191f34b0ec0c03b4472a1b6","responseTime":14,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.1g3yf1VZtWSNsNMGS4TuzeRU8tS502Cxgfw20NcJn1s","level":"info","message":"auth send jwt","requestID":"ced27f629d8c6eb0397b3b141c866cd3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ced27f629d8c6eb0397b3b141c866cd3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ced27f629d8c6eb0397b3b141c866cd3"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626509,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ced27f629d8c6eb0397b3b141c866cd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835547,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0N30.1g3yf1VZtWSNsNMGS4TuzeRU8tS502Cxgfw20NcJn1s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ced27f629d8c6eb0397b3b141c866cd3","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"d39b4519-025e-42bb-ad37-8c9ed66007c3","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835547.8664804} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ced27f629d8c6eb0397b3b141c866cd3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ced27f629d8c6eb0397b3b141c866cd3"} device-1 | {"level":"info","message":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? 200 9ms","method":"GET","requestID":"ced27f629d8c6eb0397b3b141c866cd3","responseTime":9,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3?"} gateway-1 | {"time_local":"28/Aug/2024:08:59:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ced27f629d8c6eb0397b3b141c866cd3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"client_addr":"127.0.0.1:45428","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795017,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107633,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:05.782638184Z"}]},"request_id":"3cd6111a-7ca2-488c-962f-ae2dbc3540c4","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.8815644} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914","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:59416","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"},"timestamp":"2024-08-28T08:59:03.698637938Z"}]},"request_id":"7e05c210-9701-4d22-8a94-b363266f4179","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.882527} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/71106054-6c43-40aa-ad06-39097c1d05d2? 200 13ms","method":"GET","requestID":"ca8ff890-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3? 200 13ms","method":"GET","requestID":"ca901fa0-651b-11ef-b0da-d12cff5a1914","responseTime":13,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ca926990-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6c38324-6838-444c-b7bc-ce27bbfc153f","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.8938394} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.623222,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ca926990-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ca926990-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ca926990-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling 200 9ms","method":"POST","requestID":"ca926990-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ca941740-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46c8a871-5953-4414-9796-f61dca00ab40","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.9039884} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.275664,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ca941740-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"ca941740-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ca941740-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling 200 7ms","method":"POST","requestID":"ca941740-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Building connection plan","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"09253c0c-1729-4724-8cd6-f6a037f15ac5"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cf415935-02a7-45e5-b5b7-f13fefc25eee"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"6212ea14-15d6-49c2-859a-246b8c443869"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.654014,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835545,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU0NX0.J4u7Lq_tixrOhu1rysrwrkBPyFqRg5zc_HF5_fho8OQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b'. 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]}},"raw_response":{},"request_id":"fb4a6a66-424f-4743-bed4-7e8163d9384c","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.9199715} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0c0da7b-5bb1-4037-b27d-8cac72714353","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835550.9201734} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a'","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a'","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 66ms","method":"POST","requestID":"ca959de0-651b-11ef-b0da-d12cff5a1914","responseTime":66,"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":"ca959de0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","device":"71106054-6c43-40aa-ad06-39097c1d05d2","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/10cb3922-eac0-489c-8251-87f079443d2a","device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","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/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8c9d75f34e542c729ebb72f62dcbb66b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"caa49200-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"551718db-bb57-4503-bb76-bb66729fd745","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.0128565} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.015257,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} device-1 | {"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"caa49200-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","rebac_allow":false,"scope_allow":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":"caa49200-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"caa49200-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling 200 12ms","method":"POST","requestID":"caa49200-651b-11ef-b0da-d12cff5a1914","responseTime":12,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"caa6b4e0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 73782446023709217 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:bQuV\r\na=ice-pwd:uCUFgFXNvfacjSg89IhnWRJG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 05:27:7C:57:67:5A:04:EB:0A:67:56:63:8C:D5:7B:DA:ED:B1:F4:F9:39:CB:2D:BC:5C:2C:28:88:4D:2F:DC:6E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a769487f-3671-4a76-8293-e92c60a34acf","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.0271022} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.065837,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"caa6b4e0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"caa6b4e0-651b-11ef-b0da-d12cff5a1914","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"caa6b4e0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling 200 10ms","method":"POST","requestID":"caa6b4e0-651b-11ef-b0da-d12cff5a1914","responseTime":10,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6817570277200465355 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:Ijh+\r\na=ice-pwd:6ex2gfh+uYLmjPGuJZnwtJvJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 21:32:D7:96:A4:37:88:BD:E0:4A:0C:EA:F0:75:26:2B:4C:24:7D:0C:DE:A0:E4:D3:7B:3B:BC:6B:F5:B0:7D:3A\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3639331444 1 udp 2113937151 2a049433-4900-42ae-94ae-6b1adfbc2a41.local 51033 typ host generation 0 ufrag Ijh+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1270901607 1 udp 1677729535 141.24.211.56 51033 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ijh+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"71106054-6c43-40aa-ad06-39097c1d05d2","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/71106054-6c43-40aa-ad06-39097c1d05d2'"} device-1 | {"content":{"candidate":"candidate:576803486 1 udp 2113937151 c9e5baa2-7cdb-4230-9eda-ac44bfe6ce90.local 41772 typ host generation 0 ufrag bQuV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2974479245 1 udp 1677729535 141.24.211.56 41772 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bQuV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","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/b806d94b-681d-4112-b3c3-d9ef5b598eb3'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ae120afeeedee18f83e6cef74f7ca27","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0ae120afeeedee18f83e6cef74f7ca27","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} 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/71106054-6c43-40aa-ad06-39097c1d05d2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"}}},"level":"info","message":"received a callback","requestID":"0ae120afeeedee18f83e6cef74f7ca27"} device-1 | {"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"0ae120afeeedee18f83e6cef74f7ca27","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"0ae120afeeedee18f83e6cef74f7ca27"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","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/10cb3922-eac0-489c-8251-87f079443d2a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb2bc685cf1db58a98d4dfda3339dff2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eb2bc685cf1db58a98d4dfda3339dff2","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/71106054-6c43-40aa-ad06-39097c1d05d2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"}}},"level":"info","message":"received a callback","requestID":"eb2bc685cf1db58a98d4dfda3339dff2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cab18a50-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10cb3922-eac0-489c-8251-87f079443d2a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fc92cb0-3015-4781-86b6-e98956f820ba","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.0975623} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.340934,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cab18a50-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","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":"cab18a50-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cab18a50-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"GET /peerconnections/10cb3922-eac0-489c-8251-87f079443d2a 200 8ms","method":"GET","requestID":"cab18a50-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"eb2bc685cf1db58a98d4dfda3339dff2","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"eb2bc685cf1db58a98d4dfda3339dff2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cab5a900-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54e63bb9-a830-49f0-87fb-9ccf6a7477ef","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.125571} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.072069,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cab5a900-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cab5a900-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cab5a900-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling 200 9ms","method":"POST","requestID":"cab5a900-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cab756b0-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8619b4cd-89cc-4afb-87b0-07b66e6a684a","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.135885} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.582664,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cab756b0-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"cab756b0-651b-11ef-b0da-d12cff5a1914","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cab756b0-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling 200 9ms","method":"POST","requestID":"cab756b0-651b-11ef-b0da-d12cff5a1914","responseTime":9,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY","level":"info","message":"auth send jwt","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.977311,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cd1f0f76c1e7c4b5aec9752280a077bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835551,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97 HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc"} experiment-1 | {"level":"info","message":"GET /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97 200 12ms","method":"GET","requestID":"cd1f0f76c1e7c4b5aec9752280a077bc","responseTime":12,"status":200,"url":"/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY","level":"info","message":"auth send jwt","requestID":"7be101497f8adc0d0e2f393adbb81d04"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7be101497f8adc0d0e2f393adbb81d04","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","requestID":"7be101497f8adc0d0e2f393adbb81d04"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.79879,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"7be101497f8adc0d0e2f393adbb81d04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"experiment:http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","object_type":"experiment","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835551,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7be101497f8adc0d0e2f393adbb81d04","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Attempting to finish experiment","requestID":"7be101497f8adc0d0e2f393adbb81d04"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.685147,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"peerconnection:http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835551,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","device":"71106054-6c43-40aa-ad06-39097c1d05d2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a","device":"b806d94b-681d-4112-b3c3-d9ef5b598eb3","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/10cb3922-eac0-489c-8251-87f079443d2a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10cb3922-eac0-489c-8251-87f079443d2a': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F10cb3922-eac0-489c-8251-87f079443d2a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"09374952-3956-461b-b104-bccb424c659b","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2069964} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b113524c3daace6f19cf2bbcc32c91cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b113524c3daace6f19cf2bbcc32c91cc","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/71106054-6c43-40aa-ad06-39097c1d05d2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"}}},"level":"info","message":"received a callback","requestID":"b113524c3daace6f19cf2bbcc32c91cc"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d16462e32e779adf27ea63213314507b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db828e35-af36-4563-9c47-2fb26afa31f9","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.207335} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d16462e32e779adf27ea63213314507b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"}}},"level":"info","message":"received a callback","requestID":"d16462e32e779adf27ea63213314507b"} device-1 | {"data":{"peerconnection":"10cb3922-eac0-489c-8251-87f079443d2a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /peerconnections/10cb3922-eac0-489c-8251-87f079443d2a 204 44ms","method":"DELETE","requestID":"cac07e70-651b-11ef-b0da-d12cff5a1914","responseTime":44,"status":204,"url":"/peerconnections/10cb3922-eac0-489c-8251-87f079443d2a"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"cac78350-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698924,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cac78350-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","payload":{"admin":true,"edgeToken":"T0MAEhVBCgBWnGWiBLGW_yz0WWdEHuS1S7cCbeUBgkX4CE7dz2259gdMqvfXjRIz8dBJHYDRuhPVA08Z8KKyFA","iat":1724835551,"sub":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b","subject_alt":"http://localhost/users/d958d509-20f7-45b2-8373-fdfa1cc7043b"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Q5NThkNTA5LTIwZjctNDViMi04MzczLWZkZmExY2M3MDQzYiIsImVkZ2VUb2tlbiI6IlQwTUFFaFZCQ2dCV25HV2lCTEdXX3l6MFdXZEVIdVMxUzdjQ2JlVUJna1g0Q0U3ZHoyMjU5Z2RNcXZmWGpSSXo4ZEJKSFlEUnVoUFZBMDhaOEtLeUZBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNDgzNTU1MX0.7kdb_rDjYUld1dGktaw3BiGeZ2ZRVyKTLBmnEB1gdcY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cac78350-651b-11ef-b0da-d12cff5a1914","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"d9689673-3d08-4775-90c8-0cfde3f1bab6","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2468734} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04f4d0fd-b0c2-4268-af88-507aa74d9f16","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2469854} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"cac78350-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"cac78350-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"DELETE /devices/71106054-6c43-40aa-ad06-39097c1d05d2 204 20ms","method":"DELETE","requestID":"cac78350-651b-11ef-b0da-d12cff5a1914","responseTime":20,"status":204,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"},"level":"info","message":"Successfully finished experiment","requestID":"7be101497f8adc0d0e2f393adbb81d04"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"caccb370-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71106054-6c43-40aa-ad06-39097c1d05d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea6350ab-bd4a-4084-96b0-5babb2224c98","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2753093} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.022681,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"caccb370-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"caccb370-651b-11ef-b0da-d12cff5a1914","responseTime":3,"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/71106054-6c43-40aa-ad06-39097c1d05d2/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"caccb370-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/71106054-6c43-40aa-ad06-39097c1d05d2/signaling 404 7ms","method":"POST","requestID":"caccb370-651b-11ef-b0da-d12cff5a1914","responseTime":7,"status":404,"url":"/devices/71106054-6c43-40aa-ad06-39097c1d05d2/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":"7be101497f8adc0d0e2f393adbb81d04"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cace1300-651b-11ef-b0da-d12cff5a1914"} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","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%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F002cd346-c5ac-42b5-82b6-9db7b2e8fa97': 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:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F002cd346-c5ac-42b5-82b6-9db7b2e8fa97","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fd958d509-20f7-45b2-8373-fdfa1cc7043b"}]},"store_id":"01J6C37CGRK57W0VZH5X192EZ1","writes":null},"raw_response":{},"request_id":"0da73390-f7cc-4651-843c-0af068066027","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2841938} authorization-1 | {"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","contextual_tuples":null,"store_id":"01J6C37CGRK57W0VZH5X192EZ1","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb806d94b-681d-4112-b3c3-d9ef5b598eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"033f4877-d1d4-4e92-b75b-f1da282253be","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.2843387} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:59416","raw_request":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","store_id":"01J6C37CGRK57W0VZH5X192EZ1"},"raw_response":{"authorization_model":{"id":"01J6C37CHZVNQPEVXC1B7GVY70","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9053848-4dec-46df-85dc-98979eb50f73","store_id":"01J6C37CGRK57W0VZH5X192EZ1","subsystem":"openfga","timestamp":1724835551.284395} authorization-1 | {"client_addr":"127.0.0.1:48250","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.281769,"resp_status":200,"subsystem":"opa","time":"2024-08-28T08:59:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","openfga":{"authorization_model_id":"01J6C37CHZVNQPEVXC1B7GVY70","store":"01J6C37CGRK57W0VZH5X192EZ1"},"requestID":"cace1300-651b-11ef-b0da-d12cff5a1914","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cace1300-651b-11ef-b0da-d12cff5a1914","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7be101497f8adc0d0e2f393adbb81d04","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cace1300-651b-11ef-b0da-d12cff5a1914"} device-1 | {"level":"info","message":"POST /devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling 200 8ms","method":"POST","requestID":"cace1300-651b-11ef-b0da-d12cff5a1914","responseTime":8,"status":200,"url":"/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97","requestID":"7be101497f8adc0d0e2f393adbb81d04"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7be101497f8adc0d0e2f393adbb81d04"} experiment-1 | {"level":"info","message":"DELETE /experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97 204 168ms","method":"DELETE","requestID":"7be101497f8adc0d0e2f393adbb81d04","responseTime":168,"status":204,"url":"/experiments/002cd346-c5ac-42b5-82b6-9db7b2e8fa97"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"b113524c3daace6f19cf2bbcc32c91cc","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"b113524c3daace6f19cf2bbcc32c91cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"d16462e32e779adf27ea63213314507b","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"d16462e32e779adf27ea63213314507b"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2403","request_time":"3.531","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b72961622e970ce4c07453a911b26ecd"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"5.684","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ba8ef2b94303fc88512c22c51ddc50b6"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b806d94b-681d-4112-b3c3-d9ef5b598eb3' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/71106054-6c43-40aa-ad06-39097c1d05d2' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f74dd6174c39246219ff7f6df89156fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f74dd6174c39246219ff7f6df89156fb","responseTime":0,"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/71106054-6c43-40aa-ad06-39097c1d05d2"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"f74dd6174c39246219ff7f6df89156fb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 3ms","method":"POST","requestID":"f74dd6174c39246219ff7f6df89156fb","responseTime":3,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"28/Aug/2024:08:59:11 +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":"f74dd6174c39246219ff7f6df89156fb"} federation-1 exited with code 0 authentication-1 exited with code 0 device-1 exited with code 0 authorization-1 exited with code 0 experiment-1 exited with code 0 gateway-1 exited with code 0