Skip to content

Instantly share code, notes, and snippets.

@takurx
Last active April 7, 2024 21:51
Show Gist options
  • Save takurx/8b55e92c04d4412d295955e05e073350 to your computer and use it in GitHub Desktop.
Save takurx/8b55e92c04d4412d295955e05e073350 to your computer and use it in GitHub Desktop.
log_of_kong_api_gateway-2

Log

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -Ls https://get.konghq.com/quickstart | bash


• Deploying Kong Gateway to Docker...
ℹ Debugging info logged to:
    /tmp/kong/quickstart/kong-quickstart.log
✘ Docker is not available, check /tmp/kong/quickstart/kong-quickstart.log
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ cat /tmp/kong/quickstart/kong-quickstart.log 
>clear_output_dir
<clear_output_dir
>main 
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
>clear_output_dir
<clear_output_dir
>main 
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ sudo curl -Ls https://get.konghq.com/quickstart | sudo bash

• Deploying Kong Gateway to Docker...
ℹ Debugging info logged to:
    /tmp/kong/quickstart/kong-quickstart.log
⏲︎ Downloading Docker images... ✔ 
⏲︎ Destroying previous kong-quickstart containers... ✔ 
⏲︎ Starting database... ✔ 
⏲︎ Starting Kong Gateway... ✔ 
⏲︎ Validating kong state... ✔ 

🐵 Kong Gateway Ready 🐵

=======================================================
 ⚒️                                   Using Kong Gateway
=======================================================

• Kong Gateway Data Plane endpoints:
    HTTP  = http://localhost:8000

• This script has written an environment file you can
  source to make connecting to Kong Gateway easier. 
  Run this command to source these variables into your
  environment:

→ source /tmp/kong/quickstart/kong.env

• Now you can make requests to your Kong Gateway using 
  variables from the file, for example:

→ curl -s $KONG_PROXY/mock

=======================================================
 ⚒️                              Administer Kong Gateway
=======================================================

• Kong Gateway Admin API endpoint:
   HTTP = http://localhost:8001

• To administer the gateway with curl:

→ curl -s https://localhost:8001

• To stop the gateway run:

→ curl -s https://get.konghq.com/quickstart | \ 
    bash -s -- -d -a kong-quickstart

Or remove the Docker container directly.
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -s https://get.konghq.com/quickstart | sudo bash -s -- -d -a kong-quickstart

Destroying local Kong Gateway Deployment...

⏲︎ Stopping and removing containers and networks: ✔ 

• Thanks for trying the Kong Gateway quickstart!
• The quickest way to get started in production is with Kong Konnect

→ https://get.konghq.com/konnect-free

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -s localhost:8001 | jq '.configuration'

Command 'jq' not found, but can be installed with:

sudo snap install jq  # version 1.5+dfsg-1, or
sudo apt  install jq  # version 1.6-1ubuntu0.20.04.1

See 'snap info jq' for additional versions.

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ sudo apt install jq
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -s localhost:8001 | jq '.configuration'
{
  "ssl_cert_key": "******",
  "cluster_telemetry_endpoint": "127.0.0.1:8006",
  "keyring_vault_kube_api_token_file": "/run/secrets/kubernetes.io/serviceaccount/token",
  "keyring_vault_kube_role": "default",
  "keyring_vault_auth_method": "token",
  "admin_gui_listeners": [
    {
      "ip": "0.0.0.0",
      "ssl": false,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8002",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8002,
      "bind": false
    },
    {
      "ip": "0.0.0.0",
      "ssl": true,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8445 ssl",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8445,
      "bind": false
    }
  ],
  "portal_email_verification": false,
  "portal_auth_login_attempts": 0,
  "portal_api_ssl_cert": {},
  "portal_api_ssl_protocols": "TLSv1.2 TLSv1.3",
  "portal_api_error_log": "logs/portal_api_error.log",
  "portal_api_access_log": "logs/portal_api_access.log",
  "portal_gui_ssl_cert": {},
  "portal_gui_ssl_protocols": "TLSv1.2 TLSv1.3",
  "portal_gui_ssl_cert_key": "******",
  "allow_inconsistent_data_plane_plugins": false,
  "cluster_fallback_config_export_delay": 60,
  "admin_emails_from": "\"\"",
  "admin_gui_auth_login_attempts": 0,
  "admin_gui_flags": "{}",
  "audit_log_payload_exclude": [
    "token",
    "secret",
    "password"
  ],
  "audit_log_record_ttl": 2592000,
  "audit_log_ignore_tables": {},
  "debug_error_log": "logs/debug_error.log",
  "audit_log_ignore_methods": {},
  "debug_ssl_cert": {},
  "analytics_buffer_size_limit": 100000,
  "analytics_flush_interval": 1,
  "vitals_statsd_prefix": "kong",
  "rbac_auth_header": "Kong-Admin-Token",
  "portal_api_ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/portal-api-kong-default-ecdsa.key",
  "nginx_main_worker_rlimit_nofile": "auto",
  "nginx_events_worker_connections": "auto",
  "nginx_events_multi_accept": "on",
  "nginx_http_charset": "UTF-8",
  "nginx_http_client_max_body_size": "0",
  "nginx_http_client_body_buffer_size": "8k",
  "portal_api_ssl_cert_default": "/usr/local/kong/ssl/portal-api-kong-default.crt",
  "nginx_portal_gui_err_logs": "/usr/local/kong/logs/portal_gui_error.log",
  "nginx_portal_gui_acc_logs": "/usr/local/kong/logs/portal_gui_access.log",
  "nginx_portal_api_err_logs": "/usr/local/kong/logs/portal_api_error.log",
  "nginx_portal_api_acc_logs": "/usr/local/kong/logs/portal_api_access.log",
  "nginx_http_lua_regex_match_limit": "100000",
  "nginx_http_lua_regex_cache_max_entries": "8192",
  "nginx_http_keepalive_requests": "10000",
  "vitals_flush_interval": 10,
  "vitals_delete_interval_pg": 30,
  "vitals_ttl_seconds": 3600,
  "vitals_ttl_minutes": 1500,
  "vitals_ttl_days": 0,
  "opentelemetry_tracing_sampling_rate": 0.01,
  "proxy_server_ssl_verify": true,
  "nginx_admin_client_max_body_size": "10m",
  "proxy_ssl_enabled": true,
  "proxy_listen": [
    "0.0.0.0:8000 reuseport backlog=16384",
    "0.0.0.0:8443 http2 ssl reuseport backlog=16384"
  ],
  "portal_reset_success_email": true,
  "stream_listen": [
    "off"
  ],
  "portal_application_status_email": false,
  "admin_listen": [
    "0.0.0.0:8001",
    "0.0.0.0:8444 ssl"
  ],
  "portal_application_request_email": false,
  "admin_gui_listen": [
    "0.0.0.0:8002",
    "0.0.0.0:8445 ssl"
  ],
  "pg_host": "kong-quickstart-database",
  "status_listen": [
    "127.0.0.1:8007 reuseport backlog=16384"
  ],
  "portal_approved_email": true,
  "konnect_mode": false,
  "portal_access_request_email": true,
  "cluster_listen": [
    "0.0.0.0:8005"
  ],
  "portal_invite_email": true,
  "portal_token_exp": 21600,
  "enabled_headers_upstream": {
    "X-Kong-Request-Id": true
  },
  "pg_user": "kong",
  "headers_upstream": [
    "x-kong-request-id"
  ],
  "dedicated_config_processing": true,
  "request_debug": true,
  "upstream_keepalive_pool_size": 512,
  "cluster_use_proxy": false,
  "upstream_keepalive_idle_timeout": 60,
  "upstream_keepalive_max_requests": 10000,
  "ssl_ciphers": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305",
  "lua_package_cpath": "",
  "log_level": "notice",
  "smtp_mock": true,
  "lua_package_path": "./?.lua;./?/init.lua;",
  "smtp_timeout_read": 60000,
  "smtp_timeout_send": 60000,
  "smtp_timeout_connect": 60000,
  "smtp_domain": "localhost.localdomain",
  "smtp_ssl": false,
  "smtp_starttls": false,
  "smtp_port": 25,
  "smtp_host": "localhost",
  "nginx_main_directives": [
    {
      "value": "off",
      "name": "daemon"
    },
    {
      "value": "kong kong",
      "name": "user"
    },
    {
      "value": "auto",
      "name": "worker_processes"
    },
    {
      "value": "auto",
      "name": "worker_rlimit_nofile"
    }
  ],
  "prefix": "/usr/local/kong",
  "portal_gui_protocol": "http",
  "portal_gui_use_subdomains": false,
  "lua_ssl_protocols": "TLSv1.2 TLSv1.3",
  "nginx_upstream_directives": {},
  "nginx_proxy_directives": [
    {
      "value": "X-Real-IP",
      "name": "real_ip_header"
    },
    {
      "value": "off",
      "name": "real_ip_recursive"
    }
  ],
  "nginx_location_directives": {},
  "nginx_status_directives": {},
  "nginx_admin_directives": [
    {
      "value": "10m",
      "name": "client_body_buffer_size"
    },
    {
      "value": "10m",
      "name": "client_max_body_size"
    }
  ],
  "nginx_supstream_directives": {},
  "nginx_sproxy_directives": {},
  "nginx_wasm_wasmtime_directives": {},
  "tracing_write_strategy": "file",
  "nginx_wasm_v8_directives": {},
  "nginx_wasm_wasmer_directives": {},
  "nginx_wasm_main_shm_kv_directives": {},
  "nginx_wasm_main_directives": {},
  "nginx_pid": "/usr/local/kong/pids/nginx.pid",
  "nginx_err_logs": "/usr/local/kong/logs/error.log",
  "keyring_strategy": "cluster",
  "nginx_acc_logs": "/usr/local/kong/logs/access.log",
  "ssl_cert": [
    "/usr/local/kong/ssl/kong-default.crt",
    "/usr/local/kong/ssl/kong-default-ecdsa.crt"
  ],
  "nginx_conf": "/usr/local/kong/nginx.conf",
  "nginx_kong_gui_include_conf": "/usr/local/kong/nginx-kong-gui-include.conf",
  "nginx_kong_conf": "/usr/local/kong/nginx-kong.conf",
  "nginx_kong_stream_conf": "/usr/local/kong/nginx-kong-stream.conf",
  "nginx_inject_conf": "/usr/local/kong/nginx-inject.conf",
  "nginx_kong_inject_conf": "/usr/local/kong/nginx-kong-inject.conf",
  "nginx_kong_stream_inject_conf": "/usr/local/kong/nginx-kong-stream-inject.conf",
  "kong_env": "/usr/local/kong/.kong_env",
  "ssl_cert_csr_default": "/usr/local/kong/ssl/kong-default.csr",
  "ssl_cert_default": "/usr/local/kong/ssl/kong-default.crt",
  "ssl_cert_key_default": "/usr/local/kong/ssl/kong-default.key",
  "ssl_cert_default_ecdsa": "/usr/local/kong/ssl/kong-default-ecdsa.crt",
  "ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/kong-default-ecdsa.key",
  "router_flavor": "traditional_compatible",
  "client_ssl_cert_default": "/usr/local/kong/ssl/kong-default.crt",
  "client_ssl_cert_key_default": "/usr/local/kong/ssl/kong-default.key",
  "admin_ssl_cert_default": "/usr/local/kong/ssl/admin-kong-default.crt",
  "admin_ssl_cert_key_default": "/usr/local/kong/ssl/admin-kong-default.key",
  "tracing_types": {
    "1": "all",
    "all": true
  },
  "admin_ssl_cert_default_ecdsa": "/usr/local/kong/ssl/admin-kong-default-ecdsa.crt",
  "admin_ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/admin-kong-default-ecdsa.key",
  "admin_gui_ssl_cert_default": "/usr/local/kong/ssl/admin-gui-kong-default.crt",
  "tracing_time_threshold": 0,
  "generate_trace_details": false,
  "plugins": [
    "bundled"
  ],
  "db_update_frequency": 5,
  "db_update_propagation": 0,
  "stream_listeners": {},
  "db_cache_ttl": 0,
  "wasm": false,
  "portal_gui_access_log": "logs/portal_gui_access.log",
  "portal_gui_error_log": "logs/portal_gui_error.log",
  "kic": false,
  "allow_debug_header": false,
  "audit_log_ignore_paths": {},
  "portal_api_ssl_cert_key": "******",
  "admin_gui_auth_header": "******",
  "db_cache_warmup_entities": [
    "services"
  ],
  "admin_invitation_expiry": 259200,
  "pg_ssl_version": "tlsv1_2",
  "client_ssl": false,
  "analytics_debug": false,
  "tracing": false,
  "debug_listen_local": true,
  "portal_is_legacy": false,
  "proxy_listeners": [
    {
      "ip": "0.0.0.0",
      "ssl": false,
      "backlog=16384": true,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": true,
      "listener": "0.0.0.0:8000 reuseport backlog=16384",
      "port": 8000,
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "http2": false,
      "bind": false
    },
    {
      "ip": "0.0.0.0",
      "ssl": true,
      "backlog=16384": true,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": true,
      "listener": "0.0.0.0:8443 ssl reuseport backlog=16384",
      "port": 8443,
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "http2": true,
      "bind": false
    }
  ],
  "loaded_plugins": {
    "ip-restriction": true,
    "request-transformer": true,
    "response-transformer": true,
    "request-size-limiting": true,
    "rate-limiting": true,
    "response-ratelimiting": true,
    "syslog": true,
    "loggly": true,
    "datadog": true,
    "ldap-auth": true,
    "statsd": true,
    "bot-detection": true,
    "aws-lambda": true,
    "request-termination": true,
    "prometheus": true,
    "proxy-cache": true,
    "session": true,
    "acme": true,
    "grpc-gateway": true,
    "grpc-web": true,
    "pre-function": true,
    "post-function": true,
    "azure-functions": true,
    "zipkin": true,
    "opentelemetry": true,
    "ai-proxy": true,
    "ai-prompt-template": true,
    "ai-prompt-decorator": true,
    "ai-prompt-guard": true,
    "ai-request-transformer": true,
    "ai-response-transformer": true,
    "graphql-rate-limiting-advanced": true,
    "degraphql": true,
    "route-transformer-advanced": true,
    "kafka-log": true,
    "kafka-upstream": true,
    "exit-transformer": true,
    "key-auth-enc": true,
    "upstream-timeout": true,
    "mocking": true,
    "opa": true,
    "jq": true,
    "websocket-size-limit": true,
    "websocket-validator": true,
    "konnect-application-auth": true,
    "tls-handshake-modifier": true,
    "tls-metadata-headers": true,
    "saml": true,
    "xml-threat-protection": true,
    "application-registration": true,
    "oauth2-introspection": true,
    "proxy-cache-advanced": true,
    "openid-connect": true,
    "forward-proxy": true,
    "canary": true,
    "request-transformer-advanced": true,
    "response-transformer-advanced": true,
    "rate-limiting-advanced": true,
    "ldap-auth-advanced": true,
    "statsd-advanced": true,
    "route-by-header": true,
    "jwt-signer": true,
    "vault-auth": true,
    "request-validator": true,
    "mtls-auth": true,
    "graphql-proxy-cache-advanced": true,
    "oas-validation": true,
    "jwe-decrypt": true,
    "jwt": true,
    "acl": true,
    "correlation-id": true,
    "cors": true,
    "oauth2": true,
    "tcp-log": true,
    "udp-log": true,
    "file-log": true,
    "http-log": true,
    "key-auth": true,
    "hmac-auth": true,
    "basic-auth": true
  },
  "nginx_debug_directives": {},
  "nginx_stream_directives": [
    {
      "value": "stream_prometheus_metrics 5m",
      "name": "lua_shared_dict"
    },
    {
      "value": "/usr/local/kong/ssl/ffdhe2048.pem",
      "name": "ssl_dhparam"
    },
    {
      "value": "off",
      "name": "ssl_prefer_server_ciphers"
    },
    {
      "value": "TLSv1.2 TLSv1.3",
      "name": "ssl_protocols"
    },
    {
      "value": "on",
      "name": "ssl_session_tickets"
    },
    {
      "value": "1d",
      "name": "ssl_session_timeout"
    }
  ],
  "debug_listen": [
    "off"
  ],
  "nginx_events_directives": [
    {
      "value": "on",
      "name": "multi_accept"
    },
    {
      "value": "auto",
      "name": "worker_connections"
    }
  ],
  "debug_ssl_cert_key": "******",
  "audit_log": false,
  "portal_api_ssl_cert_key_default": "/usr/local/kong/ssl/portal-api-kong-default.key",
  "nginx_main_user": "kong kong",
  "admin_approved_email": "true",
  "nginx_user": "kong kong",
  "tracing_instrumentations": [
    "off"
  ],
  "admin_gui_ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/admin-gui-kong-default-ecdsa.key",
  "tracing_sampling_rate": 0.01,
  "dns_resolver": {},
  "nginx_stream_lua_ssl_protocols": "TLSv1.2 TLSv1.3",
  "dns_hostsfile": "/etc/hosts",
  "cluster_control_plane": "127.0.0.1:8005",
  "portal_smtp_admin_emails": {},
  "cluster_ocsp": "off",
  "cluster_telemetry_listen": [
    "0.0.0.0:8006"
  ],
  "portal_gui_host": "127.0.0.1:8003",
  "untrusted_lua": "sandbox",
  "dns_no_sync": false,
  "dns_error_ttl": 1,
  "portal_cors_origins": {},
  "dns_not_found_ttl": 30,
  "mem_cache_size": "128m",
  "admin_gui_ssl_cert_default_ecdsa": "/usr/local/kong/ssl/admin-gui-kong-default-ecdsa.crt",
  "admin_gui_ssl_protocols": "TLSv1.2 TLSv1.3",
  "debug_listeners": {},
  "cluster_listeners": [
    {
      "ip": "0.0.0.0",
      "ssl": false,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8005",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8005,
      "bind": false
    }
  ],
  "status_ssl_cert_default": "/usr/local/kong/ssl/status-kong-default.crt",
  "event_hooks_enabled": false,
  "status_ssl_cert_key_default": "/usr/local/kong/ssl/status-kong-default.key",
  "kong_process_secrets": "/usr/local/kong/.kong_process_secrets",
  "status_ssl_cert_default_ecdsa": "/usr/local/kong/ssl/status-kong-default-ecdsa.crt",
  "admin_gui_error_log": "logs/admin_gui_error.log",
  "status_ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/status-kong-default-ecdsa.key",
  "keyring_enabled": false,
  "port_maps": {},
  "admin_ssl_cert": [
    "/usr/local/kong/ssl/admin-kong-default.crt",
    "/usr/local/kong/ssl/admin-kong-default-ecdsa.crt"
  ],
  "admin_ssl_cert_key": "******",
  "lua_ssl_trusted_certificate": [
    "/etc/ssl/certs/ca-certificates.crt"
  ],
  "admin_gui_ssl_cert_key": "******",
  "status_ssl_cert": {},
  "status_ssl_cert_key": "******",
  "db_resurrect_ttl": 30,
  "nginx_daemon": "off",
  "lua_socket_pool_size": 256,
  "cluster_telemetry_listeners": [
    {
      "ip": "0.0.0.0",
      "ssl": false,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8006",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8006,
      "bind": false
    }
  ],
  "nginx_worker_processes": "auto",
  "nginx_main_worker_processes": "auto",
  "trusted_ips": {},
  "real_ip_header": "X-Real-IP",
  "nginx_proxy_real_ip_header": "X-Real-IP",
  "real_ip_recursive": "off",
  "lmdb_validation_tag": "3.6",
  "error_default_type": "text/plain",
  "vitals_statsd_udp_packet_size": 1024,
  "pg_port": 5432,
  "pg_password": "******",
  "pg_ssl": false,
  "pg_ssl_verify": false,
  "pg_max_concurrent_queries": 0,
  "pg_semaphore_timeout": 60000,
  "lua_ssl_verify_depth": 1,
  "ssl_prefer_server_ciphers": "on",
  "anonymous_reports": true,
  "_debug_pg_ttl_cleanup_interval": 300,
  "status_access_log": "off",
  "enforce_rbac": "off",
  "dns_cache_size": 10000,
  "pg_ro_ssl": false,
  "pg_ro_ssl_verify": false,
  "vitals_strategy": "database",
  "route_validation_strategy": "smart",
  "nginx_proxy_real_ip_recursive": "off",
  "ssl_protocols": "TLSv1.2 TLSv1.3",
  "nginx_http_ssl_protocols": "TLSv1.2 TLSv1.3",
  "nginx_stream_ssl_protocols": "TLSv1.2 TLSv1.3",
  "worker_consistency": "eventual",
  "nginx_http_ssl_prefer_server_ciphers": "off",
  "nginx_stream_ssl_prefer_server_ciphers": "off",
  "nginx_http_ssl_dhparam": "ffdhe2048",
  "nginx_stream_ssl_dhparam": "ffdhe2048",
  "ssl_session_tickets": "on",
  "nginx_http_ssl_session_tickets": "on",
  "nginx_stream_ssl_session_tickets": "on",
  "ssl_session_timeout": "1d",
  "nginx_http_ssl_session_timeout": "1d",
  "nginx_stream_ssl_session_timeout": "1d",
  "ssl_session_cache_size": "10m",
  "proxy_access_log": "/dev/stdout",
  "proxy_error_log": "/dev/stderr",
  "proxy_stream_access_log": "logs/access.log basic",
  "proxy_stream_error_log": "logs/error.log",
  "admin_access_log": "/dev/stdout",
  "admin_error_log": "/dev/stderr",
  "admin_gui_access_log": "logs/admin_gui_access.log",
  "fips": false,
  "portal": false,
  "rbac": "off",
  "ssl_cipher_suite": "intermediate",
  "smtp_admin_emails": {},
  "pg_ro_ssl_required": false,
  "pg_ro_iam_auth": false,
  "vitals": false,
  "lua_ssl_trusted_certificate_combined": "/usr/local/kong/.ca_combined",
  "cluster_mtls": "shared",
  "pg_ssl_required": false,
  "pg_iam_auth": false,
  "cluster_data_plane_purge_delay": 1209600,
  "role": "traditional",
  "cluster_max_payload": 16777216,
  "cluster_dp_labels": {},
  "database": "postgres",
  "pg_database": "kong",
  "untrusted_lua_sandbox_requires": {},
  "untrusted_lua_sandbox_environment": {},
  "lmdb_environment_path": "dbless.lmdb",
  "lmdb_map_size": "2048m",
  "opentelemetry_tracing": [
    "off"
  ],
  "ssl_dhparam": "ffdhe2048",
  "nginx_http_lua_ssl_protocols": "TLSv1.2 TLSv1.3",
  "worker_events_max_payload": 65535,
  "cluster_fallback_config_export": false,
  "cluster_fallback_config_import": false,
  "admin_gui_ssl_cert": [
    "/usr/local/kong/ssl/admin-gui-kong-default.crt",
    "/usr/local/kong/ssl/admin-gui-kong-default-ecdsa.crt"
  ],
  "status_error_log": "logs/status_error.log",
  "portal_auto_approve": false,
  "loaded_vaults": {
    "gcp": true,
    "hcv": true,
    "env": true,
    "aws": true,
    "azure": true
  },
  "vaults": [
    "bundled"
  ],
  "admin_gui_path": "/",
  "nginx_admin_client_body_buffer_size": "10m",
  "portal_reset_email": true,
  "vitals_prometheus_scrape_interval": 5,
  "nginx_main_daemon": "off",
  "headers": [
    "server_tokens",
    "latency_tokens",
    "x-kong-request-id"
  ],
  "cluster_allowed_common_names": {},
  "client_body_buffer_size": "8k",
  "portal_app_auth": "kong-oauth2",
  "pluginserver_names": {},
  "admin_acc_logs": "/usr/local/kong/logs/admin_access.log",
  "dns_order": [
    "LAST",
    "SRV",
    "A",
    "CNAME"
  ],
  "lua_max_req_headers": 100,
  "portal_gui_ssl_cert_default_ecdsa": "/usr/local/kong/ssl/portal-gui-kong-default-ecdsa.crt",
  "dns_stale_ttl": 3600,
  "admin_gui_ssl_cert_key_default": "/usr/local/kong/ssl/admin-gui-kong-default.key",
  "portal_gui_ssl_cert_key_default": "/usr/local/kong/ssl/portal-gui-kong-default.key",
  "lua_max_resp_headers": 100,
  "portal_gui_ssl_cert_default": "/usr/local/kong/ssl/portal-gui-kong-default.crt",
  "portal_gui_ssl_cert_key_default_ecdsa": "/usr/local/kong/ssl/portal-gui-kong-default-ecdsa.key",
  "debug_access_log": "off",
  "host_ports": {},
  "lua_max_uri_args": 100,
  "portal_api_listen": [
    "0.0.0.0:8004",
    "0.0.0.0:8447 ssl"
  ],
  "nginx_http_directives": [
    {
      "value": "UTF-8",
      "name": "charset"
    },
    {
      "value": "8k",
      "name": "client_body_buffer_size"
    },
    {
      "value": "0",
      "name": "client_max_body_size"
    },
    {
      "value": "10000",
      "name": "keepalive_requests"
    },
    {
      "value": "8192",
      "name": "lua_regex_cache_max_entries"
    },
    {
      "value": "100000",
      "name": "lua_regex_match_limit"
    },
    {
      "value": "prometheus_metrics 5m",
      "name": "lua_shared_dict"
    },
    {
      "value": "/usr/local/kong/ssl/ffdhe2048.pem",
      "name": "ssl_dhparam"
    },
    {
      "value": "off",
      "name": "ssl_prefer_server_ciphers"
    },
    {
      "value": "TLSv1.2 TLSv1.3",
      "name": "ssl_protocols"
    },
    {
      "value": "on",
      "name": "ssl_session_tickets"
    },
    {
      "value": "1d",
      "name": "ssl_session_timeout"
    }
  ],
  "portal_gui_listen": [
    "0.0.0.0:8003",
    "0.0.0.0:8446 ssl"
  ],
  "pg_timeout": 5000,
  "lua_max_post_args": 100,
  "worker_state_update_frequency": 5,
  "stream_proxy_ssl_enabled": false,
  "admin_listeners": [
    {
      "ip": "0.0.0.0",
      "ssl": false,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8001",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8001,
      "bind": false
    },
    {
      "ip": "0.0.0.0",
      "ssl": true,
      "http2": false,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": false,
      "backlog=%d+": false,
      "listener": "0.0.0.0:8444 ssl",
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "port": 8444,
      "bind": false
    }
  ],
  "admin_ssl_enabled": true,
  "admin_gui_ssl_enabled": true,
  "status_listeners": [
    {
      "ip": "127.0.0.1",
      "ssl": false,
      "backlog=16384": true,
      "proxy_protocol": false,
      "deferred": false,
      "reuseport": true,
      "listener": "127.0.0.1:8007 reuseport backlog=16384",
      "port": 8007,
      "ipv6only=on": false,
      "ipv6only=off": false,
      "so_keepalive=on": false,
      "so_keepalive=off": false,
      "so_keepalive=%w*:%w*:%d*": false,
      "http2": false,
      "bind": false
    }
  ],
  "status_ssl_enabled": false,
  "debug_ssl_enabled": false,
  "portal_api_ssl_cert_default_ecdsa": "/usr/local/kong/ssl/portal-api-kong-default-ecdsa.crt",
  "enabled_headers": {
    "X-Kong-Request-Id": true,
    "Via": true,
    "Server": true,
    "X-Kong-Upstream-Latency": true,
    "latency_tokens": true,
    "X-Kong-Upstream-Status": false,
    "X-Kong-Admin-Latency": true,
    "X-Kong-Response-Latency": true,
    "server_tokens": true,
    "X-Kong-Proxy-Latency": true
  }
}

Log3

Managing services

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -i -s -X POST http://localhost:8001/services \
>  --data name=example_service \
>  --data url='http://httpbin.org'
HTTP/1.1 201 Created
Date: Sun, 07 Apr 2024 07:20:19 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
X-Kong-Admin-Request-ID: a48f1857a773dd5fd4e37617e2f60029
Content-Length: 376
X-Kong-Admin-Latency: 19
Server: kong/3.6.1.1-enterprise-edition

{"host":"httpbin.org","created_at":1712474419,"retries":5,"name":"example_service","tags":null,"ca_certificates":null,"protocol":"http","id":"ad9d8944-6d99-4152-9637-2db97163a81e","tls_verify_depth":null,"client_certificate":null,"updated_at":1712474419,"enabled":true,"write_timeout":60000,"port":80,"tls_verify":null,"connect_timeout":60000,"path":null,"read_timeout":60000}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -i -s -X POST http://localhost:8001/services  --data name=example_service  --data url='http://httpbin.org' | jq
parse error: Invalid numeric literal at line 1, column 9
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8001/services/example_service
{"host":"httpbin.org","created_at":1712474419,"retries":5,"name":"example_service","tags":null,"ca_certificates":null,"protocol":"http","id":"ad9d8944-6d99-4152-9637-2db97163a81e","tls_verify_depth":null,"client_certificate":null,"updated_at":1712474419,"enabled":true,"write_timeout":60000,"port":80,"tls_verify":null,"connect_timeout":60000,"path":null,"read_timeout":60000}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl --request PATCH \
>  --url localhost:8001/services/example_service \
>  --data retries=6
{"host":"httpbin.org","created_at":1712474419,"retries":6,"name":"example_service","tags":null,"ca_certificates":null,"protocol":"http","id":"ad9d8944-6d99-4152-9637-2db97163a81e","tls_verify_depth":null,"client_certificate":null,"updated_at":1712474557,"enabled":true,"write_timeout":60000,"port":80,"tls_verify":null,"connect_timeout":60000,"path":null,"read_timeout":60000}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8001/services
{"data":[{"host":"httpbin.org","created_at":1712474419,"retries":6,"name":"example_service","tags":null,"ca_certificates":null,"protocol":"http","id":"ad9d8944-6d99-4152-9637-2db97163a81e","tls_verify_depth":null,"client_certificate":null,"updated_at":1712474557,"enabled":true,"write_timeout":60000,"port":80,"tls_verify":null,"connect_timeout":60000,"path":null,"read_timeout":60000}],"next":null}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8001/services | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   399  100   399    0     0  49875      0 --:--:-- --:--:-- --:--:-- 49875
{
  "data": [
    {
      "host": "httpbin.org",
      "created_at": 1712474419,
      "retries": 6,
      "name": "example_service",
      "tags": null,
      "ca_certificates": null,
      "protocol": "http",
      "id": "ad9d8944-6d99-4152-9637-2db97163a81e",
      "tls_verify_depth": null,
      "client_certificate": null,
      "updated_at": 1712474557,
      "enabled": true,
      "write_timeout": 60000,
      "port": 80,
      "tls_verify": null,
      "connect_timeout": 60000,
      "path": null,
      "read_timeout": 60000
    }
  ],
  "next": null
}

Managing route

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -i -X POST http://localhost:8001/services/example_service/routes \
>   --data 'paths[]=/mock' \
>   --data name=example_route
HTTP/1.1 201 Created
Date: Sun, 07 Apr 2024 08:43:49 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
X-Kong-Admin-Request-ID: 95837f7a7d14763788fc3f6f056b3236
Content-Length: 485
X-Kong-Admin-Latency: 22
Server: kong/3.6.1.1-enterprise-edition

{"created_at":1712479429,"hosts":null,"request_buffering":true,"response_buffering":true,"preserve_host":false,"snis":null,"strip_path":true,"sources":null,"service":{"id":"ad9d8944-6d99-4152-9637-2db97163a81e"},"paths":["/mock"],"id":"6896d1e5-8e9f-4a16-8c5b-ac01537da4c8","destinations":null,"methods":null,"updated_at":1712479429,"tags":null,"regex_priority":0,"protocols":["http","https"],"https_redirect_status_code":426,"headers":null,"name":"example_route","path_handling":"v0"}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8001/services/example_service/routes/example_route
{"created_at":1712479429,"hosts":null,"request_buffering":true,"response_buffering":true,"preserve_host":false,"snis":null,"strip_path":true,"sources":null,"service":{"id":"ad9d8944-6d99-4152-9637-2db97163a81e"},"paths":["/mock"],"id":"6896d1e5-8e9f-4a16-8c5b-ac01537da4c8","destinations":null,"methods":null,"updated_at":1712479429,"tags":null,"regex_priority":0,"protocols":["http","https"],"https_redirect_status_code":426,"headers":null,"name":"example_route","path_handling":"v0"}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8001/services/example_service/routes/example_route | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   485  100   485    0     0  53888      0 --:--:-- --:--:-- --:--:-- 53888
{
  "created_at": 1712479429,
  "hosts": null,
  "request_buffering": true,
  "response_buffering": true,
  "preserve_host": false,
  "snis": null,
  "strip_path": true,
  "sources": null,
  "service": {
    "id": "ad9d8944-6d99-4152-9637-2db97163a81e"
  },
  "paths": [
    "/mock"
  ],
  "id": "6896d1e5-8e9f-4a16-8c5b-ac01537da4c8",
  "destinations": null,
  "methods": null,
  "updated_at": 1712479429,
  "tags": null,
  "regex_priority": 0,
  "protocols": [
    "http",
    "https"
  ],
  "https_redirect_status_code": 426,
  "headers": null,
  "name": "example_route",
  "path_handling": "v0"
}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl --request PATCH \
>   --url localhost:8001/services/example_service/routes/example_route \
>   --data tags="tutorial"
{"created_at":1712479429,"hosts":null,"request_buffering":true,"response_buffering":true,"preserve_host":false,"snis":null,"strip_path":true,"sources":null,"service":{"id":"ad9d8944-6d99-4152-9637-2db97163a81e"},"paths":["/mock"],"id":"6896d1e5-8e9f-4a16-8c5b-ac01537da4c8","destinations":null,"methods":null,"updated_at":1712479541,"tags":["tutorial"],"regex_priority":0,"protocols":["http","https"],"https_redirect_status_code":426,"headers":null,"name":"example_route","path_handling":"v0"}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_2308curl -X GET http://localhost:8001/services/example_service/routes/example_route | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   493  100   493    0     0  54777      0 --:--:-- --:--:-- --:--:-- 54777
{
  "created_at": 1712479429,
  "hosts": null,
  "request_buffering": true,
  "response_buffering": true,
  "preserve_host": false,
  "snis": null,
  "strip_path": true,
  "sources": null,
  "service": {
    "id": "ad9d8944-6d99-4152-9637-2db97163a81e"
  },
  "paths": [
    "/mock"
  ],
  "id": "6896d1e5-8e9f-4a16-8c5b-ac01537da4c8",
  "destinations": null,
  "methods": null,
  "updated_at": 1712479541,
  "tags": [
    "tutorial"
  ],
  "regex_priority": 0,
  "protocols": [
    "http",
    "https"
  ],
  "https_redirect_status_code": 426,
  "headers": null,
  "name": "example_route",
  "path_handling": "v0"
}
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl http://localhost:8001/routes
{"data":[{"created_at":1712479429,"hosts":null,"request_buffering":true,"response_buffering":true,"preserve_host":false,"snis":null,"strip_path":true,"sources":null,"service":{"id":"ad9d8944-6d99-4152-9637-2db97163a81e"},"paths":["/mock"],"id":"6896d1e5-8e9f-4a16-8c5b-ac01537da4c8","destinations":null,"methods":null,"updated_at":1712479541,"tags":["tutorial"],"regex_priority":0,"protocols":["http","https"],"https_redirect_status_code":426,"headers":null,"name":"example_route","path_handling":"v0"}],"next":null}

Proxy a request

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8000/mock/anything
{
  "args": {}, 
  "data": "", 
  "files": {}, 
  "form": {}, 
  "headers": {
    "Accept": "*/*", 
    "Host": "httpbin.org", 
    "User-Agent": "curl/7.68.0", 
    "X-Amzn-Trace-Id": "Root=1-66125d9f-4d397f9a3692abea4b598316", 
    "X-Forwarded-Host": "localhost", 
    "X-Forwarded-Path": "/mock/anything", 
    "X-Forwarded-Prefix": "/mock", 
    "X-Kong-Request-Id": "78d24941bbc98a639420a63a9fefaf61"
  }, 
  "json": null, 
  "method": "GET", 
  "origin": "172.21.0.1, 118.152.155.194", 
  "url": "http://localhost/anything"
}

Log4

curl -X GET http://httpbin.org と curl -X GET http://localhost:8000/mock のアクセスが同じ。

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://httpbin.org
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>httpbin.org</title>
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700"
        rel="stylesheet">
    <link rel="stylesheet" type="text/css" href="/flasgger_static/swagger-ui.css">
    <link rel="icon" type="image/png" href="/static/favicon.ico" sizes="64x64 32x32 16x16" />
    <style>
        html {
            box-sizing: border-box;
            overflow: -moz-scrollbars-vertical;
            overflow-y: scroll;
        }

        *,
        *:before,
        *:after {
            box-sizing: inherit;
        }

        body {
            margin: 0;
            background: #fafafa;
        }
    </style>
</head>

<body>
    <a href="https://github.com/requests/httpbin" class="github-corner" aria-label="View source on Github">
        <svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;"
            aria-hidden="true">
            <path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
            <path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
                fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
            <path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
                fill="currentColor" class="octo-body"></path>
        </svg>
    </a>
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute;width:0;height:0">
        <defs>
            <symbol viewBox="0 0 20 20" id="unlocked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path>
            </symbol>

            <symbol viewBox="0 0 20 20" id="locked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="close">
                <path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow">
                <path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow-down">
                <path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"
                />
            </symbol>


            <symbol viewBox="0 0 24 24" id="jump-to">
                <path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z" />
            </symbol>

            <symbol viewBox="0 0 24 24" id="expand">
                <path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z" />
            </symbol>

        </defs>
    </svg>


    <div id="swagger-ui">
        <div data-reactroot="" class="swagger-ui">
            <div>
                <div class="information-container wrapper">
                    <section class="block col-12">
                        <div class="info">
                            <hgroup class="main">
                                <h2 class="title">httpbin.org
                                    <small>
                                        <pre class="version">0.9.2</pre>
                                    </small>
                                </h2>
                                <pre class="base-url">[ Base URL: httpbin.org/ ]</pre>
                            </hgroup>
                            <div class="description">
                                <div class="markdown">
                                    <p>A simple HTTP Request &amp; Response Service.
                                        <br>
                                        <br>
                                        <b>Run locally: </b>
                                        <code>$ docker run -p 80:80 kennethreitz/httpbin</code>
                                    </p>
                                </div>
                            </div>
                            <div>
                                <div>
                                    <a href="https://kennethreitz.org" target="_blank">the developer - Website</a>
                                </div>
                                <a href="mailto:me@kennethreitz.org">Send email to the developer</a>
                            </div>
                        </div>
                        <!-- ADDS THE LOADER SPINNER -->
                        <div class="loading-container">
                            <div class="loading"></div>
                        </div>

                    </section>
                </div>
            </div>
        </div>
    </div>


    <div class='swagger-ui'>
        <div class="wrapper">
            <section class="clear">
                <span style="float: right;">
                    [Powered by
                    <a target="_blank" href="https://github.com/rochacbruno/flasgger">Flasgger</a>]
                    <br>
                </span>
            </section>
        </div>
    </div>



    <script src="/flasgger_static/swagger-ui-bundle.js"> </script>
    <script src="/flasgger_static/swagger-ui-standalone-preset.js"> </script>
    <script src='/flasgger_static/lib/jquery.min.js' type='text/javascript'></script>
    <script>

        window.onload = function () {
            

            fetch("/spec.json")
                .then(function (response) {
                    response.json()
                        .then(function (json) {
                            var current_protocol = window.location.protocol.slice(0, -1);
                            if (json.schemes[0] != current_protocol) {
                                // Switches scheme to the current in use
                                var other_protocol = json.schemes[0];
                                json.schemes[0] = current_protocol;
                                json.schemes[1] = other_protocol;

                            }
                            json.host = window.location.host;  // sets the current host

                            const ui = SwaggerUIBundle({
                                spec: json,
                                validatorUrl: null,
                                dom_id: '#swagger-ui',
                                deepLinking: true,
                                jsonEditor: true,
                                docExpansion: "none",
                                apisSorter: "alpha",
                                //operationsSorter: "alpha",
                                presets: [
                                    SwaggerUIBundle.presets.apis,
                                    // yay ES6 modules ↘
                                    Array.isArray(SwaggerUIStandalonePreset) ? SwaggerUIStandalonePreset : SwaggerUIStandalonePreset.default
                                ],
                                plugins: [
                                    SwaggerUIBundle.plugins.DownloadUrl
                                ],
            
            // layout: "StandaloneLayout"  // uncomment to enable the green top header
        })

        window.ui = ui

        // uncomment to rename the top brand if layout is enabled
        // $(".topbar-wrapper .link span").replaceWith("<span>httpbin</span>");
        })
    })
}
    </script>  <div class='swagger-ui'>
    <div class="wrapper">
        <section class="block col-12 block-desktop col-12-desktop">
            <div>

                <h2>Other Utilities</h2>

                <ul>
                    <li>
                        <a href="/forms/post">HTML form</a> that posts to /post /forms/post</li>
                </ul>

                <br />
                <br />
            </div>
        </section>
    </div>
</div>
</body>

</html>
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8000/mock
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>httpbin.org</title>
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700"
        rel="stylesheet">
    <link rel="stylesheet" type="text/css" href="/flasgger_static/swagger-ui.css">
    <link rel="icon" type="image/png" href="/static/favicon.ico" sizes="64x64 32x32 16x16" />
    <style>
        html {
            box-sizing: border-box;
            overflow: -moz-scrollbars-vertical;
            overflow-y: scroll;
        }

        *,
        *:before,
        *:after {
            box-sizing: inherit;
        }

        body {
            margin: 0;
            background: #fafafa;
        }
    </style>
</head>

<body>
    <a href="https://github.com/requests/httpbin" class="github-corner" aria-label="View source on Github">
        <svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;"
            aria-hidden="true">
            <path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
            <path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
                fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
            <path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
                fill="currentColor" class="octo-body"></path>
        </svg>
    </a>
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute;width:0;height:0">
        <defs>
            <symbol viewBox="0 0 20 20" id="unlocked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path>
            </symbol>

            <symbol viewBox="0 0 20 20" id="locked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="close">
                <path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow">
                <path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow-down">
                <path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"
                />
            </symbol>


            <symbol viewBox="0 0 24 24" id="jump-to">
                <path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z" />
            </symbol>

            <symbol viewBox="0 0 24 24" id="expand">
                <path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z" />
            </symbol>

        </defs>
    </svg>


    <div id="swagger-ui">
        <div data-reactroot="" class="swagger-ui">
            <div>
                <div class="information-container wrapper">
                    <section class="block col-12">
                        <div class="info">
                            <hgroup class="main">
                                <h2 class="title">httpbin.org
                                    <small>
                                        <pre class="version">0.9.2</pre>
                                    </small>
                                </h2>
                                <pre class="base-url">[ Base URL: httpbin.org/ ]</pre>
                            </hgroup>
                            <div class="description">
                                <div class="markdown">
                                    <p>A simple HTTP Request &amp; Response Service.
                                        <br>
                                        <br>
                                        <b>Run locally: </b>
                                        <code>$ docker run -p 80:80 kennethreitz/httpbin</code>
                                    </p>
                                </div>
                            </div>
                            <div>
                                <div>
                                    <a href="https://kennethreitz.org" target="_blank">the developer - Website</a>
                                </div>
                                <a href="mailto:me@kennethreitz.org">Send email to the developer</a>
                            </div>
                        </div>
                        <!-- ADDS THE LOADER SPINNER -->
                        <div class="loading-container">
                            <div class="loading"></div>
                        </div>

                    </section>
                </div>
            </div>
        </div>
    </div>


    <div class='swagger-ui'>
        <div class="wrapper">
            <section class="clear">
                <span style="float: right;">
                    [Powered by
                    <a target="_blank" href="https://github.com/rochacbruno/flasgger">Flasgger</a>]
                    <br>
                </span>
            </section>
        </div>
    </div>



    <script src="/flasgger_static/swagger-ui-bundle.js"> </script>
    <script src="/flasgger_static/swagger-ui-standalone-preset.js"> </script>
    <script src='/flasgger_static/lib/jquery.min.js' type='text/javascript'></script>
    <script>

        window.onload = function () {
            

            fetch("/spec.json")
                .then(function (response) {
                    response.json()
                        .then(function (json) {
                            var current_protocol = window.location.protocol.slice(0, -1);
                            if (json.schemes[0] != current_protocol) {
                                // Switches scheme to the current in use
                                var other_protocol = json.schemes[0];
                                json.schemes[0] = current_protocol;
                                json.schemes[1] = other_protocol;

                            }
                            json.host = window.location.host;  // sets the current host

                            const ui = SwaggerUIBundle({
                                spec: json,
                                validatorUrl: null,
                                dom_id: '#swagger-ui',
                                deepLinking: true,
                                jsonEditor: true,
                                docExpansion: "none",
                                apisSorter: "alpha",
                                //operationsSorter: "alpha",
                                presets: [
                                    SwaggerUIBundle.presets.apis,
                                    // yay ES6 modules ↘
                                    Array.isArray(SwaggerUIStandalonePreset) ? SwaggerUIStandalonePreset : SwaggerUIStandalonePreset.default
                                ],
                                plugins: [
                                    SwaggerUIBundle.plugins.DownloadUrl
                                ],
            
            // layout: "StandaloneLayout"  // uncomment to enable the green top header
        })

        window.ui = ui

        // uncomment to rename the top brand if layout is enabled
        // $(".topbar-wrapper .link span").replaceWith("<span>httpbin</span>");
        })
    })
}
    </script>  <div class='swagger-ui'>
    <div class="wrapper">
        <section class="block col-12 block-desktop col-12-desktop">
            <div>

                <h2>Other Utilities</h2>

                <ul>
                    <li>
                        <a href="/forms/post">HTML form</a> that posts to /post /forms/post</li>
                </ul>

                <br />
                <br />
            </div>
        </section>
    </div>
</div>
</body>

</html>

Log5

chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8000/mock
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>httpbin.org</title>
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700"
        rel="stylesheet">
    <link rel="stylesheet" type="text/css" href="/flasgger_static/swagger-ui.css">
    <link rel="icon" type="image/png" href="/static/favicon.ico" sizes="64x64 32x32 16x16" />
    <style>
        html {
            box-sizing: border-box;
            overflow: -moz-scrollbars-vertical;
            overflow-y: scroll;
        }

        *,
        *:before,
        *:after {
            box-sizing: inherit;
        }

        body {
            margin: 0;
            background: #fafafa;
        }
    </style>
</head>

<body>
    <a href="https://github.com/requests/httpbin" class="github-corner" aria-label="View source on Github">
        <svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;"
            aria-hidden="true">
            <path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
            <path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
                fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
            <path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
                fill="currentColor" class="octo-body"></path>
        </svg>
    </a>
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="position:absolute;width:0;height:0">
        <defs>
            <symbol viewBox="0 0 20 20" id="unlocked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path>
            </symbol>

            <symbol viewBox="0 0 20 20" id="locked">
                <path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8zM12 8H8V5.199C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="close">
                <path d="M14.348 14.849c-.469.469-1.229.469-1.697 0L10 11.819l-2.651 3.029c-.469.469-1.229.469-1.697 0-.469-.469-.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-.469-.469-.469-1.228 0-1.697.469-.469 1.228-.469 1.697 0L10 8.183l2.651-3.031c.469-.469 1.228-.469 1.697 0 .469.469.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c.469.469.469 1.229 0 1.698z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow">
                <path d="M13.25 10L6.109 2.58c-.268-.27-.268-.707 0-.979.268-.27.701-.27.969 0l7.83 7.908c.268.271.268.709 0 .979l-7.83 7.908c-.268.271-.701.27-.969 0-.268-.269-.268-.707 0-.979L13.25 10z"
                />
            </symbol>

            <symbol viewBox="0 0 20 20" id="large-arrow-down">
                <path d="M17.418 6.109c.272-.268.709-.268.979 0s.271.701 0 .969l-7.908 7.83c-.27.268-.707.268-.979 0l-7.908-7.83c-.27-.268-.27-.701 0-.969.271-.268.709-.268.979 0L10 13.25l7.418-7.141z"
                />
            </symbol>


            <symbol viewBox="0 0 24 24" id="jump-to">
                <path d="M19 7v4H5.83l3.58-3.59L8 6l-6 6 6 6 1.41-1.41L5.83 13H21V7z" />
            </symbol>

            <symbol viewBox="0 0 24 24" id="expand">
                <path d="M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z" />
            </symbol>

        </defs>
    </svg>


    <div id="swagger-ui">
        <div data-reactroot="" class="swagger-ui">
            <div>
                <div class="information-container wrapper">
                    <section class="block col-12">
                        <div class="info">
                            <hgroup class="main">
                                <h2 class="title">httpbin.org
                                    <small>
                                        <pre class="version">0.9.2</pre>
                                    </small>
                                </h2>
                                <pre class="base-url">[ Base URL: httpbin.org/ ]</pre>
                            </hgroup>
                            <div class="description">
                                <div class="markdown">
                                    <p>A simple HTTP Request &amp; Response Service.
                                        <br>
                                        <br>
                                        <b>Run locally: </b>
                                        <code>$ docker run -p 80:80 kennethreitz/httpbin</code>
                                    </p>
                                </div>
                            </div>
                            <div>
                                <div>
                                    <a href="https://kennethreitz.org" target="_blank">the developer - Website</a>
                                </div>
                                <a href="mailto:me@kennethreitz.org">Send email to the developer</a>
                            </div>
                        </div>
                        <!-- ADDS THE LOADER SPINNER -->
                        <div class="loading-container">
                            <div class="loading"></div>
                        </div>

                    </section>
                </div>
            </div>
        </div>
    </div>


    <div class='swagger-ui'>
        <div class="wrapper">
            <section class="clear">
                <span style="float: right;">
                    [Powered by
                    <a target="_blank" href="https://github.com/rochacbruno/flasgger">Flasgger</a>]
                    <br>
                </span>
            </section>
        </div>
    </div>



    <script src="/flasgger_static/swagger-ui-bundle.js"> </script>
    <script src="/flasgger_static/swagger-ui-standalone-preset.js"> </script>
    <script src='/flasgger_static/lib/jquery.min.js' type='text/javascript'></script>
    <script>

        window.onload = function () {
            

            fetch("/spec.json")
                .then(function (response) {
                    response.json()
                        .then(function (json) {
                            var current_protocol = window.location.protocol.slice(0, -1);
                            if (json.schemes[0] != current_protocol) {
                                // Switches scheme to the current in use
                                var other_protocol = json.schemes[0];
                                json.schemes[0] = current_protocol;
                                json.schemes[1] = other_protocol;

                            }
                            json.host = window.location.host;  // sets the current host

                            const ui = SwaggerUIBundle({
                                spec: json,
                                validatorUrl: null,
                                dom_id: '#swagger-ui',
                                deepLinking: true,
                                jsonEditor: true,
                                docExpansion: "none",
                                apisSorter: "alpha",
                                //operationsSorter: "alpha",
                                presets: [
                                    SwaggerUIBundle.presets.apis,
                                    // yay ES6 modules ↘
                                    Array.isArray(SwaggerUIStandalonePreset) ? SwaggerUIStandalonePreset : SwaggerUIStandalonePreset.default
                                ],
                                plugins: [
                                    SwaggerUIBundle.plugins.DownloadUrl
                                ],
            
            // layout: "StandaloneLayout"  // uncomment to enable the green top header
        })

        window.ui = ui

        // uncomment to rename the top brand if layout is enabled
        // $(".topbar-wrapper .link span").replaceWith("<span>httpbin</span>");
        })
    })
}
    </script>  <div class='swagger-ui'>
    <div class="wrapper">
        <section class="block col-12 block-desktop col-12-desktop">
            <div>

                <h2>Other Utilities</h2>

                <ul>
                    <li>
                        <a href="/forms/post">HTML form</a> that posts to /post /forms/post</li>
                </ul>

                <br />
                <br />
            </div>
        </section>
    </div>
</div>
</body>

</html>
chino@chino-Legion-5-15IAH7H:~/LoRaWorks_230822$ curl -X GET http://localhost:8000/mock
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta name="GENERATOR" content="JustSystems Homepage Builder Version 20.0.6.0 for Windows">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>�������̃z�[���y�[�W</title>
</head>
<frameset cols=18,82>
  <frame src="menu.htm" marginheight="0" marginwidth="0" scrolling="auto" name="left">
  <frame src="top.htm" marginheight="0" marginwidth="0" scrolling="auto" name="right">
  <noframes>
  <body></body>
  </noframes>
</frameset>
</html>

Log 5.1

chino@chino-Legion-5-15IAH7H:~$ ssh root@10.98.22.94
root@10.98.22.94's password: 
Welcome to Ubuntu 22.04 LTS (GNU/Linux 6.5.13-3-pve x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage
Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings

Last login: Sun Apr  7 13:01:34 2024
root@test-fiware:~# 

Log 5.2

chino@chino-Legion-5-15IAH7H:~$ curl -X GET http://localhost:8001/services | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   399  100   399    0     0  44333      0 --:--:-- --:--:-- --:--:-- 44333
{
  "data": [
    {
      "host": "httpbin.org",
      "created_at": 1712474419,
      "retries": 6,
      "name": "example_service",
      "tags": null,
      "ca_certificates": null,
      "protocol": "http",
      "id": "ad9d8944-6d99-4152-9637-2db97163a81e",
      "tls_verify_depth": null,
      "client_certificate": null,
      "updated_at": 1712474557,
      "enabled": true,
      "write_timeout": 60000,
      "port": 80,
      "tls_verify": null,
      "connect_timeout": 60000,
      "path": null,
      "read_timeout": 60000
    }
  ],
  "next": null
}
chino@chino-Legion-5-15IAH7H:~$ curl -X GET http://localhost:8000/services | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   103  100   103    0     0   100k      0 --:--:-- --:--:-- --:--:--  100k
{
  "message": "no Route matched with those values",
  "request_id": "8c835553097b1133f5fb2953f9059d4b"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment