Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Baptiste GAILLET
    @bat79a
    this one : Upgrade to 3.10.1
    Eric
    @leleueri
    Hi @bat79a
    Thanks you for highlight this issue. I will submit it to the team .
    Baptiste GAILLET
    @bat79a
    Perfect thx a lot, do you know if I can get this script somewhere because the migration is bloqued for me rigth now ;p
    Eric
    @leleueri
    ok, it has been fixed but the script isn't yet merge into the master branch so the documentation link is broken
    Baptiste GAILLET
    @bat79a
    Yes thx a lot ;p
    John Lithgow
    @johnlithgow88_gitlab

    Hi all,
    I am trying to enable prometheus metrics on the API gateway -- running on Openshift. No matter what i try , i get a connection refused error on port 18082.

    my gravitee.yaml contains:

    services:
      core:
        http:
          enabled: true
          port: 18082
          host: ${APIM3_GATEWAY_SERVICE_HOST}
          authentication:
            type: basic
            users:
              admin: adminadmin
          secured: false
      metrics:
        enabled: true
        prometheus:
          enabled: true

    on the gateway pod, I've tried:

    wget localhost:18082
    wget 127.0.0.1:18082
    wget <pod_id>:18082

    and all return : can't connect to remote host (xxxxxxxx): Connection refused

    Any Ideas? thanks in Advance

    1 reply
    John Lithgow
    @johnlithgow88_gitlab

    Hi all, when i set the JAVA_OPTS Environment variable with my own -Xms and -Xmx, it seems Gravitee is always appending -Xms512m -Xmx512m to the options. example , i set -Xmx to 1 GB, but some other process is appending -Xmx512m:

    JAVA_OPTS: -Djava.net.preferIPv4Stack=true -Xms512m -Xmx1g -Djava.awt.headless=true -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Xms512m -Xmx512m -Djava.awt.headless=true -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8

    2 replies
    Baptiste GAILLET
    @bat79a

    Hi all.
    I'm trying to migrat from 3.8.6 to 3.9.4, but I have an error on my gateway and my management-api :

    Caused by: com.mongodb.MongoCommandException: Command failed with error 292 (QueryExceededMemoryLimitNoDiskUseAllowed): 'Error in $cursor stage :: caused by :: Sort exceed │
    │ ed memory limit of 104857600 bytes, but did not opt in to external sorting.' on server scw-my-server-name.mongodb.net:27xxx. The full response is {"ope │
    │ rationTime": {"$timestamp": {"t": 1632219698, "i": 3}}, "ok": 0.0, "errmsg": "Error in $cursor stage :: caused by :: Sort exceeded memory limit of 104857600 bytes, but did │
    │  not opt in to external sorting.", "code": 292, "codeName": "QueryExceededMemoryLimitNoDiskUseAllowed", "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1632219698, "i │
    │ ": 3}}, "signature": {"hash": {"$binary": "Kmwq5ieodKBkmxxxx=", "$type": "00"}, "keyId": {"$numberLong": "6975232359939440641"}}}}

    If someone know what append or what I'm doing wrong ?

    Eric
    @leleueri
    Hi @bat79a, Do you have a full stack trace to see where the exception is raised ?
    Baptiste GAILLET
    @bat79a
    yes sure, the full stack trace on the gateway logs is :
    Caused by: com.mongodb.MongoCommandException: Command failed with error 292 (QueryExceededMemoryLimitNoDiskUseAllowed): 'Error in $cursor stage :: caused by :: Sort exceeded memory limit of 104857600 byt │
    │ es, but did not opt in to external sorting.' on server scw-my-server-dev-shard-00-02.dje4n.mongodb.net:27xxx. The full response is {"operationTime": {"$timestamp": {"t": 1632224563, "i": 6}}, "ok": 0. │
    │ 0, "errmsg": "Error in $cursor stage :: caused by :: Sort exceeded memory limit of 104857600 bytes, but did not opt in to external sorting.", "code": 292, "codeName": "QueryExceededMemoryLimitNoDiskUseAl │
    │ lowed", "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1632224563, "i": 6}}, "signature": {"hash": {"$binary": "ojpLSHCcOzSFtJx5bRkexxx=", "$type": "00"}, "keyId": {"$numberLong": "697523235993 │
    │ 9440641"}}}}                                                                                                                                                                                                │
    │     at com.mongodb.internal.connection.ProtocolHelper.getCommandFailureException(ProtocolHelper.java:175)                                                                                                   │
    │     at com.mongodb.internal.connection.InternalStreamConnection.receiveCommandMessageResponse(InternalStreamConnection.java:303)                                                                            │
    │     at com.mongodb.internal.connection.InternalStreamConnection.sendAndReceive(InternalStreamConnection.java:259)                                                                                           │
    │     at com.mongodb.internal.connection.UsageTrackingInternalConnection.sendAndReceive(UsageTrackingInternalConnection.java:99)                                                                              │
    │     at com.mongodb.internal.connection.DefaultConnectionPool$PooledConnection.sendAndReceive(DefaultConnectionPool.java:450)                                                                                │
    │     at com.mongodb.internal.connection.CommandProtocolImpl.execute(CommandProtocolImpl.java:72)                                                                                                             │
    │     at com.mongodb.internal.connection.DefaultServer$DefaultServerProtocolExecutor.execute(DefaultServer.java:226)                                                                                          │
    │     at com.mongodb.internal.connection.DefaultServerConnection.executeProtocol(DefaultServerConnection.java:269)                                                                                            │
    │     at com.mongodb.internal.connection.DefaultServerConnection.command(DefaultServerConnection.java:131)                                                                                                    │
    │     at com.mongodb.internal.connection.DefaultServerConnection.command(DefaultServerConnection.java:123)                                                                                                    │
    │     at com.mongodb.operation.CommandOperationHelper.executeCommand(CommandOperationHelper.java:343)                                                                                                         │
    │     at com.mongodb.operation.CommandOperationHelper.executeCommand(CommandOperationHelper.java:334)                                                                                                         │
    │     at com.mongodb.operation.CommandOperationHelper.executeCommandWithConnection(CommandOperationHelper.java:220)                                                                                           │
    │     at com.mongodb.operation.CommandOperationHelper$5.call(CommandOperationHelper.java:206)                                                                                                                 │
    │     at com.mongodb.operation.OperationHelper.withReadConnectionSource(OperationHelper.java:463)
    AliFetvaci
    @aliFetvaci61
    Is gravitee API gateway async logging API call into elasticsearch or sync ?
    9 replies
    @brasseld @aelamrani
    Baptiste GAILLET
    @bat79a
    11:42:43.858 [vert.x-eventloop-thread-1] [] INFO  i.g.r.e.ElasticsearchReporter - Index mapping template successfully defined                                                                               │
    │ 11:42:47.971 [gio.sync-1] [] INFO  i.g.g.s.s.s.OrganizationSynchronizer - 0 organization(s) synchronized in 11ms.                                                                                           │
    │ 11:42:48.009 [gio.sync-1] [] ERROR i.g.g.services.sync.SyncManager - An error occurs while synchronizing APIs                                                                                               │
    │ org.springframework.data.mongodb.UncategorizedMongoDbException: Command failed with error 292 (QueryExceededMemoryLimitNoDiskUseAllowed): 'Error in $cursor stage :: caused by :: Sort exceeded memory limi │
    │ t of 104857600 bytes, but did not opt in to external sorting.' on server scw-my-server-name-shard-00-02.dje4n.mongodb.net:27xxx. The full response is {"operationTime": {"$timestamp": {"t": 1632224563,  │
    │ "i": 6}}, "ok": 0.0, "errmsg": "Error in $cursor stage :: caused by :: Sort exceeded memory limit of 104857600 bytes, but did not opt in to external sorting.", "code": 292, "codeName": "QueryExceededMemo │
    │ ryLimitNoDiskUseAllowed", "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1632224563, "i": 6}}, "signature": {"hash": {"$binary": "ojpLSHCcOzSFtJx5bRkekGCrkp8=", "$type": "00"}, "keyId": {"$numberLo │
    │ ng": "6975232359939440641"}}}}; nested exception is com.mongodb.MongoCommandException: Command failed with error 292 (QueryExceededMemoryLimitNoDiskUseAllowed): 'Error in $cursor stage :: caused by :: So │
    │ rt exceeded memory limit of 104857600 bytes, but did not opt in to external sorting.' on server scw-gorenove-aws-dev-shard-00-02.dje4n.mongodb.net:27017. The full response is {"operationTime": {"$timesta │
    │ mp": {"t": 1632224563, "i": 6}}, "ok": 0.0, "errmsg": "Error in $cursor stage :: caused by :: Sort exceeded memory limit of 104857600 bytes, but did not opt in to external sorting.", "code": 292, "codeNa │
    │ me": "QueryExceededMemoryLimitNoDiskUseAllowed", "$clusterTime": {"clusterTime": {"$timestamp": {"t": 1632224563, "i": 6}}, "signature": {"hash": {"$binary": "ojpLSHCcOzSFtJx5bRkekGCrkp8=", "$type": "00" │
    │ }, "keyId": {"$numberLong": "6975232359939440641"}}}}                                                                                                                                                       │
    │     at org.springframework.data.mongodb.core.MongoExceptionTranslator.translateExceptionIfPossible(MongoExceptionTranslator.java:138)                                                                       │
    │     at org.springframework.data.mongodb.core.MongoTemplate.potentiallyConvertRuntimeException(MongoTemplate.java:2774)                                                                                      │
    │     at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:540)                                                                                                                  │
    │     at org.springframework.data.mongodb.core.MongoTemplate.doAggregate(MongoTemplate.java:2094)                                                                                                             │
    │     at org.springframework.data.mongodb.core.MongoTemplate.aggregate(MongoTemplate.java:2064)                                                                                                               │
    │     at org.springframework.data.mongodb.core.MongoTemplate.aggregate(MongoTemplate.java:1963)                                                                                                               │
    │     at io.gravitee.repository.mongodb.management.internal.event.EventMongoRepositoryImpl.searchLatest(EventMongoRepositoryImpl.java:80)                                                                     │
    │     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    Eric
    @leleueri
    How many events do you have in the events collection? Do you have indexes on it ? Here is the indexes we create on our mongo instance:
    db.getCollection(`events`).createIndex( { "type" : 1 } );
    db.getCollection(`events`).createIndex( { "updatedAt" : 1 } );
    db.getCollection(`events`).createIndex( { "properties.api_id" : 1 } );
    db.getCollection(`events`).createIndex( { "properties.api_id":1, "type":1} );
    db.getCollection(`events`).reIndex();
    Baptiste GAILLET
    @bat79a
    I really don't know, how I can check this ?
    Eric
    @leleueri
    Baptiste GAILLET
    @bat79a
    I think that I have 662 docs in the events collection with a document like that for the first one :
    {"_id":"xxxxxx","type":"START_API","payload":"{\n  \"id\" : \"xxxxxx\",\n  \"environmentId\" : \"DEFAULT\",\n  \"name\" : \"TEST API\",\n  \"description\" : \"TEST d'une api après installation from scratch\",\n  \"version\" : \"0.1.0\",\n  \"definition\" : \"{\\n  \\\"id\\\" : \\\"xxxxxxxxxxxx\\\",\\n  \\\"name\\\" : \\\"TEST API\\\",\\n  \\\"version\\\" : \\\"0.1.0\\\",\\n  \\\"proxy\\\" : {\\n    \\\"virtual_hosts\\\" : [ {\\n      \\\"path\\\" : \\\"/qmaster-version\\\"\\n    } ],\\n    \\\"strip_context_path\\\" : false,\\n    \\\"preserve_host\\\" : false,\\n    \\\"groups\\\" : [ {\\n      \\\"name\\\" : \\\"default-group\\\",\\n      \\\"endpoints\\\" : [ {\\n        \\\"name\\\" : \\\"default\\\",\\n        \\\"target\\\" : \\\"https://xxx.fr/version/\\\",\\n        \\\"weight\\\" : 1,\\n        \\\"backup\\\" : false,\\n        \\\"type\\\" : \\\"HTTP\\\",\\n        \\\"inherit\\\" : true\\n      } ],\\n      \\\"load_balancing\\\" : {\\n        \\\"type\\\" : \\\"ROUND_ROBIN\\\"\\n      },\\n      \\\"http\\\" : {\\n        \\\"connectTimeout\\\" : 5000,\\n        \\\"idleTimeout\\\" : 60000,\\n        \\\"keepAlive\\\" : true,\\n        \\\"readTimeout\\\" : 10000,\\n        \\\"pipelining\\\" : false,\\n        \\\"maxConcurrentConnections\\\" : 100,\\n        \\\"useCompression\\\" : true,\\n        \\\"followRedirects\\\" : false\\n      }\\n    } ]\\n  },\\n  \\\"paths\\\" : {\\n    \\\"/\\\" : [ ]\\n  }\\n}\",\n  \"deployedAt\" : 1590144654223,\n  \"createdAt\" : 1590140383716,\n  \"updatedAt\" : 1590144654223,\n  \"visibility\" : \"private\",\n  \"lifecycleState\" : \"started\",\n  \"apiLifecycleState\" : \"created\"\n}","properties":{"api_id":"xxx","origin":"xxx","user":"xxx"},"createdAt":{"$date":"2020-05-22T10:50:54.223Z"},"updatedAt":{"$date":"2020-05-22T10:50:54.223Z"},"_class":"io.gravitee.repository.mongodb.management.internal.model.EventMongo","environments":["DEFAULT"]}

    and the index is

    _id_ (or _id)

    with a size of 98,3kb

    Eric
    @leleueri
    Is it possible to create the indexes and see if it fixes the error?
    db.getCollection(`events`).createIndex( { "type" : 1 } );
    db.getCollection(`events`).createIndex( { "updatedAt" : 1 } );
    db.getCollection(`events`).createIndex( { "properties.api_id" : 1 } );
    db.getCollection(`events`).createIndex( { "properties.api_id":1, "type":1} );
    db.getCollection(`events`).reIndex();
    Baptiste GAILLET
    @bat79a
    reIndex is unauthorized for the atlas mongoDB cluster ? But I think that the commands fix the problem ;p
    Thx a lot, I will make some tests and verification.
    Thank you so much @leleueri
    AliFetvaci
    @aliFetvaci61
    gravitee-io/issues#6177 @brasseld @leleueri
    Dietrich Schulten
    @dschulten
    The Enable Emailing option in Settings-Settings/Smtp is disabled, I cannot enable the checkbox. Why is that? Can I somehow make the Smtp section editable?
    1 reply
    Vivek Gupta
    @vivekgupta8983
    Hi All,
    I had to deploy Graviteeio AM on Kubernetes using helm chart but management-api and gateway give me 404 not found can anyone help ho to resolve it
    6 replies

    graviteeio-am3-gateway am-auth.dev.k8s.kalisseo.dappit.fr
    graviteeio-am3-management-api am-mgmt.auth.dev.k8s.kalisseo.dappit.fr
    graviteeio-am3-management-ui am.auth.dev.k8s.kalisseo.dappit.fr

    This are the URL's

    26 replies
    Vivek Gupta
    @vivekgupta8983

    Hi All,

    I am facing difficulty in deploy Gravitee APIM3x here is my configuration file http://pastie.org/p/1NJIj4XMwRRg1ncqjtIrmy this is the my URL path https://apim.dev.k8s.kalisseo.dappit.fr/

    Dietrich Schulten
    @dschulten

    @brasseld Gravitee is running in docker and we have used environment vars, but not to specify smtp settings. I believe they would have to be set on the apim-management-api container:

    management_api:
        image: ${DOCKER_REGISTRY_MIRROR:-}graviteeio/apim-management-api:${GRAVITEE}
        hostname: management
        restart: always
        ports:
          - 8083:8083
        environment:
          - gravitee_management_mongodb_uri=mongodb://${MONGODB_HOST}/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
          - gravitee_analytics_elasticsearch_endpoints_0=${ELASTICSEARCH_URL_0}

    Even the manual shows a deactivated SMTP section in settings: https://docs.gravitee.io/apim/3.x/apim_installguide_rest_apis_configuration.html#smtp-configuration. What causes those settings to be deactivated?

    2 replies
    Jonathan Bennett
    @JonathanBennett
    Has anyone seen before in the portal when you click ‘gateways’ it just returns ‘null’ and in the error log there’s a numeric exception?
    2 replies
    Victor Dusautois
    @vdusauto
    Hello, We are experiencing issues with JWT plan : Signed JWT rejected: Another algorithm expected, or no matching key(s) found
    Some APIs work, some just don't (APIM 3.10). Any insight on where to look ? Thanks !
    7 replies
    Stephen Nguyen
    @huynq33
    Anyone can show me how to add TRY IT OUT with redoc swagger mode in portal ? It's very important for my company. Thanks
    1 reply
    AliFetvaci
    @aliFetvaci61
    ElementalArchmage
    @ElementalArchmage
    Hello! Which tls version protocols and ciphers are used in gravitee gateway and apim by default? How I can change them?
    4 replies
    Tanking
    @Tank-zhu
    hi
    client_id Where did it come from ???
    3 replies
    Tanking
    @Tank-zhu
    image.png
    AliFetvaci
    @aliFetvaci61
    Thiago Lins
    @thiagolinsx
    image.png
    Email validation in gravitee am is invalidating valid emails.
    Michel Dirix
    @micheldirix_twitter
    Hello. I have installed API Management 3.0.4 on a production server. I would like to deploy the latest version on a new server with this data. I have done a mongodump and run the migration scripts to get to the updated version.
    When I run Gravitee, I get messages about apis and applications "has no identified owners in the list". How can I fix that ?
    Andrea Rossi
    @andrea.rossi_gitlab

    Hi, I'm new to Kubernetes, but not to Gravity. I'm on Kubernetes 1.22.2 version (minikube) and using helm 3.6.3 . I'm trying to deploy AM like described here https://docs.gravitee.io/am/current/am_installguide_kubernetes.html but I get:

    `Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Ingress" in version "extensions/v1beta1"    `

    What can I do? @brasseld

    8 replies
    Andy Johnson
    @andy-22
    Hi, I am trying to follow developer setup guide at https://docs.gravitee.io/apim/3.x/apim_devguide_bootstrap.html and I cloned master branches of all four repositories mentioned. Setup Intellij project exactly as mentioned and when I Build Rest API project, I get the following error:
    java: package io.gravitee.rest.api.service.swagger.converter.extension does not exist
    32 replies
    When I run Gateway, I get tons of errors as well as seen in the screenshot below:
    image001.png
    Can someone please help me so that I can move on with my setup?
    Also I would like to know what changes do I need to make for the plugins developed for version 1.x to work with latest version 3.11