Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 21:06
    jhomarolo-vortx commented #3028
  • 17:31
    gszr ready_for_review #6604
  • 17:30
    gszr synchronize #6604
  • 17:30

    gszr on use-grpcurl-master

    chore(ci) use grpcurl master chore(ci) bump kbt to 4.12.1 (compare)

  • 13:58
    gszr review_requested #6604
  • 13:58
    gszr edited #6604
  • 13:57
    gszr synchronize #6604
  • 13:57

    gszr on use-grpcurl-master

    chore(ci) use grpcurl master (compare)

  • 11:40
    bungle commented #6605
  • 11:39
    bungle commented #6605
  • 11:39
    bungle labeled #6605
  • 11:39
    bungle commented #6605
  • 11:38
    bungle commented #6605
  • 11:38
    bungle commented #6605
  • 08:24
    Tieske commented #334
  • 07:51
    mikaello commented #334
  • 06:13
    rjshrjndrn commented #334
  • 06:10
    cciechao commented #6574
  • 06:01
    cciechao commented #6574
  • 05:42
    v-super commented #6574
mr.pity
@pity_mr_twitter
@raunak.khatri_gitlab hi! you should allow access to it. for example via env var: KONG_ADMIN_LISTEN: 0.0.0.0:8001
hi! anyone configure GeoIP headers via Kong? how? pls help(
fairyqb
@fairyqb
Kong/kong#6297 feat/pdk.kong.response.redirect
@SothyLorn_gitlab
Muhammad Husain Toding Bunga
@husentoding
hi, im working on a custom plugin which make request to another service with resty.http
and right now im trying to create a test for it, how do i mock the response?
Priyansh Jain
@Presto412

Hi everyone, I'm adding unit tests to kong via luaunit, in a dockerized kong environment. This is the dockerfile

FROM kong:2.0.3-alpine
USER root
WORKDIR /usr/local
COPY . .
RUN luarocks make *.rockspec
RUN ./run-tests.sh
USER kong

and here's the run-tests script

#!/bin/sh

find . -name "*-test.lua" |
    while read -r filename; do
        echo "Executing test for: $filename"
        /usr/local/openresty/luajit/bin/luajit "$filename"
    done

This is how I'm running the individual unit tests. I have added stubs for some dependencies, but the actual code makes use of kong's logging feature kong.log("...")

When I run the tests, it shows that the global kong is a nil value

If i try to fix it via

kong = require("kong")

I get an error:

/usr/local/openresty/luajit/bin/luajit: /usr/local/share/lua/5.1/kong/init.lua:30: lua-resty-core must be loaded; make sure 'lua_load_resty_core' is not disabled.
stack traceback:
        [C]: in function 'assert'
        /usr/local/share/lua/5.1/kong/init.lua:30: in main chunk

Currently I've added a hack fix for the same - by doing

kong = {}
function kong.log(log_message) print("Kong log: " .. tostring(log_message)) end

But could anyone help out with this?

Rahul M
@rahulramfort
Kong newbie here! I'm evaluating Kong for my use case. How do I do dynamic IP blacklisting and how to ban an IP for some x duration.
2 replies
Couldn't find help for these online.
Is it possible to do these in kong or should I use something like fail2ban to achieve this.
Muhammad Husain Toding Bunga
@husentoding

hi, im working on a custom plugin which make request to another service with resty.http
and right now im trying to create a test for it, how do i mock the response?

can anyone help? 😅

Chris Shepherd
@thesheps
Hey folks! I was just wondering if there was any guidance about configuring Kong on ECS with shared EFS mountpoints for data persistence?
1 reply
Jacob Alan Pawlak
@jakepaw
Hello All! still testing LDAP plugin for kong. I have 'echo' service up and running and would like to test the ldap plugin against this service. I have enabled this plugin as well as passed the annotation to the echo service to include it. When i go to curl the 'echo' service I base64 encode my user and password but does not work. I encode the LDAP admin account and password and a I can get in. How can I get LDAP plugin to use the admin account to verify that my user id / password rather than having to use the LDAP admin? Seems like that would defeat the purpose
hadhemiGH
@hadhemiGH
Hi everyone ! Using kubernetes, I want to attach my openfaas serverless function to a kong endpoint but I am always getting a "failure to get a peer from the ring-balancer" error when using this ingress rule
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: demo
spec:
rules:
  • http:
    paths:
    • path: /foo
      backend:
      serviceName: gateway-external
      servicePort: 31112
how can I fix this
NB: the 31112 port is the openfaas gateway port
Priyansh Jain
@Presto412

Hi everyone, I'm adding unit tests to kong via luaunit, in a dockerized kong environment. This is the dockerfile

FROM kong:2.0.3-alpine
USER root
WORKDIR /usr/local
COPY . .
RUN luarocks make *.rockspec
RUN ./run-tests.sh
USER kong

and here's the run-tests script

#!/bin/sh

find . -name "*-test.lua" |
    while read -r filename; do
        echo "Executing test for: $filename"
        /usr/local/openresty/luajit/bin/luajit "$filename"
    done

This is how I'm running the individual unit tests. I have added stubs for some dependencies, but the actual code makes use of kong's logging feature kong.log("...")

When I run the tests, it shows that the global kong is a nil value

Can anyone please help?

sumantfordev
@sumantfordev
How to build kong in FIPS mode? Is that supported, which modules can be used in FIPS mode?
Ygor Medvedev
@YegorMedvedev

Hey guys! I'm facing an issue with go-lang pointers in configuration type. Here is my config

type Config struct {
  NestedKey struct {
    ListOfValues     []*string `json: "list_of_values,omitempty"`
  }
}

func (conf Config) Access(kong *pdk.PDK) {...}

And when I send an HTTP request in order to create a plugin it returns an error like

schema violation (config.nestedkey: {\n  list_of_values = \"unknown field\"\n})

Please help me to solve this issue...

Cosimo Damiano Prete
@CDPrete

Hey guys! I'm facing an issue with go-lang pointers in configuration type. Here is my config

type Config struct {
  NestedKey struct {
    ListOfValues     []*string `json: "list_of_values,omitempty"`
  }
}

func (conf Config) Access(kong *pdk.PDK) {...}

And when I send an HTTP request in order to create a plugin it returns an error like

schema violation (config.nestedkey: {\n  list_of_values = \"unknown field\"\n})

Please help me to solve this issue...

I've also the same issue: Kong/kong#6363

cmarocco
@cmarocco
Hey gus! Is the workspace feature available only in Kong EE?
jeremyjpj0916
@jeremyjpj0916
well its in the CE database as well with less fields, I just don't think the admin api calls are exposed for it. Enterprise docs list it here: https://docs.konghq.com/enterprise/2.1.x/admin-api/workspaces/reference/ , ofc you can always fork and add a wrapper to edit your own workspace in open source but I can't think of any value for it in the CE with how its defined right now.
Grant Magdanz
@grant34_gitlab
Hi all, I'm writing a go plugin and am wondering how I can expose multiple environment variables to the plugin? I found this issue: Kong/kong#6149 that suggests setting KONG_NGINX_MAIN_ENV. This works for a single variable, but I need to expose multiple. Any idea how I can do that? Thanks in advance.
Saran
@Sarankrishna
Hi all, I have installed kong on Kubernetes pod. While configuring the service in kong I used kubernetes service name as "host". When accessing the API through Kong , I am getting error "name resolution failed".
So is it possible to use the kubernetes service name as host in kong service configuration?
1 reply
hadhemiGH
@hadhemiGH
hello everyone I want to create a Kong CORS Plugin to enable all origins and all headers using a kubernetes Ingress rule ... how can I do so ?
Shailesh Goel
@shailesh91
Hi All, I recently started working with kong and am looking into some insight into the workings of the bundled plugin "response-ratelimiting". I have tried creating a rate limit at a consumer level and the other at a service level. I am currently observing only the consumer limit is being applied. Is this expected behavior? If so why?
mvanmeerbeck
@mvanmeerbeck
Hello Kongers,
I'm currently considering using Kong for my gateway since i need rate limit on my APIs. I need to limit the API per pricing plan. Is there a way to do that ?
I've seen that we can limit an API per consumer. But that's not enough for my case, i would need to define a rate limit per "type of user" (maybe with a tag?) but be counted by "credential".
Vladimir Murray
@vl4d

Good day all I may log an issue but I'd like to check here first, I have a simple go plugin setup and I would like to run db_import command but I always get the following error message whenever the custom plugin is enabled in the plugins env var:

2020/10/06 17:04:24 [verbose] Kong: 2.1.4
Error: 
/usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:42: attempt to index upvalue 'kong' (a nil value)
stack traceback:
        /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:42: in function 'is_on'
        /usr/local/share/lua/5.1/kong/db/schema/plugin_loader.lua:184: in function 'load_subschema'
        ...are/lua/5.1/kong/db/schema/others/declarative_config.lua:222: in function 'load_plugin_subschemas'
        ...are/lua/5.1/kong/db/schema/others/declarative_config.lua:234: in function 'load_plugin_subschemas'
        ...are/lua/5.1/kong/db/schema/others/declarative_config.lua:730: in function 'load'
        /usr/local/share/lua/5.1/kong/db/declarative/init.lua:37: in function 'new_config'
        /usr/local/share/lua/5.1/kong/cmd/config.lua:82: in function 'cmd_exec'
        /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:88>
        [C]: in function 'xpcall'
        /usr/local/share/lua/5.1/kong/cmd/init.lua:88: in function </usr/local/share/lua/5.1/kong/cmd/init.lua:45>
        /usr/local/bin/kong:9: in function 'file_gen'
        init_worker_by_lua:49: in function <init_worker_by_lua:47>
        [C]: in function 'xpcall'
        init_worker_by_lua:56: in function <init_worker_by_lua:54>
2020/10/06 17:04:24 [verbose] prefix in use: /usr/local/kong

Has any 1 seen this before?

Ygor Medvedev
@YegorMedvedev
Hello guys,
How can I set a priority for Golang plugin in Kong?
Dinesh
@samdinesh86
Good Day, has any one tried setting up openid-connect plugin with Identity server?
Christos
@christos312_gitlab
Hello, i used the kong AWS cloudformation template, and when I login to the EC2 instance and type env I dont see any variables.
If I want to change something, how can i do it?
Haseeb ur Rehman
@professorhaseeb
Can i connect to a api server which is protected by oauth2 using kong and deliver the response via kong service? Ia this something that can be done with kong gayeway?
rahulwinzo
@rahulwinzo
Is it possible to write a custom plugin for routing requests in Kong? I need to route a request based upon some database lookup.
Harish
@vasuharish
@rahulwinzo I think this plugin will give you an idea https://docs.konghq.com/hub/kong-inc/route-by-header/ . It is used to route based on headers.
Abraão Silva
@abraaojs
Hello guys, I would like to know from which version the kong entreprise is compatible with K8S
?
Ajit Pratap Singh
@ajitpratap0
hey everyone, We are using kong 2.0, the requirement that we have is to have a different public uri and redirect the incoming request to a different uri of the upstream server which has a path variable, checked a lot of resources but still facing issues, can someone help?
mkcloner
@mkcloner
hi there , suppose a situation in which a consumer has rate-limit plugin (200 request per month ), and this consumer uses 100 requests of his rate-limit , and then if we backup the kong by deck and restore the kong entities in another server , we see that mentioned consumer again has the rate-limit of 200 requests remaining ( otherwise this consumer should have the 100 request reamining ) and it show that the metrics of rate-limit plugin reset after backup-restore of kong . what should i do to solve this issue ?
Abraão Silva
@abraaojs
nginx: [error] init_by_lua error: /usr/local/share/lua/5.1/kong/init.lua:180: attempt to call local 'handler' (a table value)
help?
prafultamrakar
@prafultamrakar
failed (111: Connection refused), context: ngx.timer, client:xxx.xxx.xxx.xxx, server: 0.0.0.0:8443
1 reply
Yasir Karam
@yasir2000
Hi, am fairly new to Kong, I have Kong on Kubernetes/Kubesphere cluster-node and I cant add rules nor access Admin GUI over web even I added ingress, can anyone help pls?
mvillafuertem
@mvillafuertem

Hi there,

I am new to kong, I'm trying enable go_plugins, but I get this error. Any hint?

This is my kong.conf

plugins = bundled,go-hello
go_pluginserver_exe = /usr/local/bin/go-pluginserver
go_plugins_dir = /usr/local/kong/go_plugins/

I'm using this docker-compose https://github.com/baxiang/docker_compose/blob/master/kong/docker-compose.yml

Thanks in advance.

kong              | sh: /usr/local/bin/go-pluginserver: not found
kong              | 2020/11/23 11:08:22 [error] 1#0: init_by_lua error: /usr/local/share/lua/5.1/MessagePack.lua:813: missing bytes
kong              | stack traceback:
kong              |     [C]: in function 'error'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:813: in function 'underflow'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:529: in function 'unpack_cursor'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:843: in function 'unpack'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:463: in function 'get_plugin_info'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:472: in function 'get_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:519: in function 'load_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:159: in function 'load_plugin_handler'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:243: in function 'load_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:295: in function 'load_plugin_schemas'
kong              |     /usr/local/share/lua/5.1/kong/init.lua:467: in function 'init'
kong              |     init_by_lua:3: in main chunk
kong              | nginx: [error] init_by_lua error: /usr/local/share/lua/5.1/MessagePack.lua:813: missing bytes
kong              | stack traceback:
kong              |     [C]: in function 'error'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:813: in function 'underflow'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:529: in function 'unpack_cursor'
kong              |     /usr/local/share/lua/5.1/MessagePack.lua:843: in function 'unpack'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:463: in function 'get_plugin_info'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:472: in function 'get_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins/go.lua:519: in function 'load_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:159: in function 'load_plugin_handler'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:243: in function 'load_plugin'
kong              |     /usr/local/share/lua/5.1/kong/db/dao/plugins.lua:295: in function 'load_plugin_schemas'
kong              |     /usr/local/share/lua/5.1/kong/init.lua:467: in function 'init'
kong              |     init_by_lua:3: in main chunk
mvillafuertem
@mvillafuertem
bash-5.0# ls -la /usr/local/bin/
total 8012
drwxr-xr-x    1 1000     1000          4096 Nov 23 14:51 .
drwxr-xr-x    1 root     root          4096 Sep 22 18:32 ..
drwxr-xr-x    1 root     root          4096 Nov 23 14:51 go-plugins
-rwxr-xr-x    1 root     root       8151112 Nov 23 14:51 go-pluginserver
-rwxr-xr-x    1 1000     1000           451 Sep 18 18:51 json2lua
-rwxr-xr-x    1 kong     root           238 Sep 18 18:51 kong
-rwxr-xr-x    1 1000     1000           450 Sep 18 18:51 lapis
-rwxr-xr-x    1 1000     1000           451 Sep 18 18:51 lua2json
-rwxr-xr-x    1 1000     1000          1482 Sep 18 18:51 luarocks
-rwxr-xr-x    1 1000     1000           964 Sep 18 18:51 luarocks-admin
tanvir-appveen
@tanvir-appveen

Hi, my microservices receive https traffic on a non-443 port.

While accessing my website api - I get the following error in the network tab in Chrome
(failed)net::ERR_HTTP2_PROTOCOL_ERROR

and the logs of the kong proxy pod show that its using http to access the pods of the application

I have the following questions

  1. How do I make sure it uses https to communicate with my microservices? In the official K8s ingress, I just an annotation : nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"

  2. How do I enforce HTTP 1.1 instead of HTTP2?

mvillafuertem
@mvillafuertem
everything works after installing glibc. https://github.com/sgerrand/alpine-pkg-glibc
haoweiguang
@haoweiguang
how to debug kong custom plugins?
mvillafuertem
@mvillafuertem
@haoweiguang +1 how to debug kong custom plugins? How to log from custom plugin?