Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Leo Vigna
    @leovigna
    I have also disabled perMessageWebSocketCompressionSupported and perFrameWebSocketCompressionSupported
    Leo Vigna
    @leovigna
    Does the gravitee proxy support websocket continuation frames? This seems to have been brought up in past issues.
    kolychev1995
    @kolychev1995
    Hi. Is there a mechanism in gravitee to implement something like politics in all apis at once? Is it possible to make some kind of plugin that would modify the request or response before or after the policy chain? I need to remove some headers in the response from the api gateway, but for this I do not want to add a policy to each api that does this.
    6 replies
    2cgc5h
    @2cgc5h_gitlab
    How to allow/disallow api-key in request query params per API?
    Michele Spinella
    @michelespinella

    Good day,
    I have a try to deploy gravitee-apim on kubernetes (microk8s) with the following command:

    microk8s helm3 install --set mongo.uri=mongodb://gravitee:gravitee@mongodb.default.svc.cluster.local:27017/gravitee?connectTimeoutMS=30000 
                           --set elasticsearch.enabled=false graviteeio-apim3 graviteeio/apim3
    
    But, I have two problems:
     1. The deployment and the pod of graviteeio-apim3-api (API) is in error due to "Readiness probe failed: dial tcp 10.1.105.38:8083: connect: connection refused", the attached log seems to be ok
     2. when I try to log into UI I receive this error: 
        Access to XMLHttpRequest at 'https://apim.example.com/management/organizations/DEFAULT/console' from origin 'http://localhost:18002' has been blocked by CORS policy: 
        No 'Access-Control-Allow-Origin' header is present on the requested resource.
        Possibly unhandled rejection: {"data":null,"status":-1,"config":{"method":"GET","transformRequest":[null],"transformResponse":[null],"jsonpCallbackParam":"callback","url":"https://apim.example.com/management/organizations/DEFAULT/console","headers":{"Accept":"application/json, text/plain, */*"}},"statusText":"","xhrStatus":"error"}
        vendors~app-674d4d08bf760c2f11af.js:3886 GET https://apim.example.com/management/organizations/DEFAULT/console net::ERR_FAILED
        Is possible to configure ingress/service to avoid apim.example.com, for now in my scenario my cluster ha an ip (172.XX.XX.XXX)? Have I to configure manually ingress?

    Thanks for any help
    regards @bthibault @brasseld
    Michele Spinella

    8 replies
    Markus Witte
    @macwitte
    @brasseld Is there any documentation about how to develop a gravitee service? I tried to write an own service and used the gravitee-gateway-service-ratelimit/gravitee-policy-ratelimit as the development base. The new AbstractService .doStart() method is called as expected and the Service is registered without any exception by using parentBeanFactory.registerSingleton(...). Unfortunately in my Policy which should use this singleton instance, it will not resolve my service from the context (executionContext.getComponent(...)). Is there any additional step to register my service? Or what I am doing wrong?
    15 replies
    Tom Brendlé
    @tbrendle

    Hi Room, I'm trying to setup a gmail SMTP using helm,

    smtp:
      enabled: true
      host: smtp.gmail.com
      port: 587
      from: test@gmail.com
      username: test@gmail.com
      password: password
      subject: "[Gravitee] %s"
      properties:
        auth: true
        starttlsEnable: true
        ssl.trust: smtp.gmail.com

    Unfortunately I get this error :

    11:31:17.708 [SimpleAsyncTaskExecutor-5] ERROR i.g.r.a.s.impl.EmailServiceImpl - Error while sending email notification
    org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not convert socket to TLS;
      nested exception is:
        javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate). Failed messages: javax.mail.MessagingException: Could not convert socket to TLS;

    Seems something is wrong with TLS here .. any idea on how I can debug this ?

    Thank you in advance :)

    5 replies
    Yaz
    @yazalulloa
    Hello is there a guide to use Consul.io with Gravitee?
    2 replies
    spelka
    @spelka

    hello, i am using the gravitee 3.x GUI for the first time, and I am trying to determine what the baseURL is for my APIs. In gravitee 2.x I was able to just open the API gallery, select the API endpoint's Overview, and the baseURL was the first thing listed, front and center. In gravitee 3.x, I no longer see a comparable field. I have been digging around for awhile with no luck,

    I also tried searching the gravitee API documentation to see if there i can run a curl command against a restful endpoint to GET the baseURL for a given API entry, but when i searched the 3.x documentation for "baseURL" I only got hits on Identity provider creation.

    I may be missing something obvious in using the new GUI, I don't have a lot of experience tinkering with it. But any help would be greatly appreciated!

    3 replies
    AliFetvaci
    @aliFetvaci61
    I created a new issue. can you reply quickly? gravitee-io/issues#6177
    Hi,
    i tryied to deploy gravitee-apim on kubernetes (microk8s) with the following command:

    microk8s helm3 install --set mongo.uri=mongodb://gravitee:gravitee@mongodb.default.svc.cluster.local:27017/gravitee?connectTimeoutMS=30000 --set elasticsearch.enabled=true --set es.endpoints={http://graviteeio-apim3-elasticsearch-client.default.svc.cluster.local:9200} graviteeio-apim3 graviteeio/apim3

    but i get the following warnings in the apim3-api pod :

    14:53:42.741 [vertx-blocked-thread-checker] WARN i.v.core.impl.BlockedThreadChecker - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 2391 ms, time limit is 2000 ms
    14:53:43.740 [vertx-blocked-thread-checker] WARN i.v.core.impl.BlockedThreadChecker - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 3391 ms, time limit is 2000 ms
    14:53:44.740 [vertx-blocked-thread-checker] WARN i.v.core.impl.BlockedThreadChecker - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 4391 ms, time limit is 2000 ms
    14:53:45.750 [vertx-blocked-thread-checker] WARN i.v.core.impl.BlockedThreadChecker - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 5391 ms, time limit is 2000 ms
    io.vertx.core.VertxException: Thread blocked

    After a loop blocked thread i get the follwing error:

    14:53:52.349 [graviteeio-node] ERROR i.g.r.a.s.GraviteeApisContainer - An unexpected error occurs while starting Gravitee.io - Rest APIs
    java.lang.NullPointerException: Name is null
    at java.base/java.lang.Enum.valueOf(Unknown Source)
    at io.gravitee.repository.management.model.RoleScope.valueOf(RoleScope.java:22)
    at io.gravitee.repository.mongodb.management.MongoRoleRepository.map(MongoRoleRepository.java:137)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
    at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
    at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
    at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
    at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
    at java.base/java.util.stream.ReferencePipeline.collect(Unknown Source)
    at io.gravitee.repository.mongodb.management.MongoRoleRepository.findAllByReferenceIdAndReferenceType(MongoRoleRepository.java:173)
    at io.gravitee.rest.api.repository.proxy.RoleRepositoryProxy.findAllByReferenceIdAndReferenceType(RoleRepositoryProxy.java:61)
    at io.gravitee.rest.api.service.impl.RoleServiceImpl.findAllByOrganization(RoleServiceImpl.java:104)
    at io.gravitee.rest.api.service.impl.RoleServiceImpl.findAll(RoleServiceImpl.java:97)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.base/java.lang.reflect.Method.invoke(Unknown Source)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215)
    at com.sun.proxy.$Proxy47.findAll(Unknown Source)
    at io.gravitee.rest.api.service.impl.upgrade.DefaultRolesUpgrader.upgrade(DefaultRolesUpgrader.java:50)
    at io.gravit
    Full logs in attachment.
    Can you please help us?
    Thanks for replies @brasseld
    Marco.
    André Santos
    @AndreRog
    I am using docker compose to launch gravitee to connect to AWS ES managed service and Document DB. With just the ES everything is working fine, when I delete the mongodb dependency and change the mongo_uri for the documentDB from AWS I get an error :
    org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'graviteeTransactionManager' available: No matching PlatformTransactionManager bean found for qualifier 'graviteeTransactionManager' - neither qualifier match nor bean name match!
    at org.springframework.beans.factory.annotation.BeanFactoryAnnotationUtils.qualifiedBeanOfType(BeanFactoryAnnotationUtils.java:109)
    at org.springframework.beans.factory.annotation.BeanFactoryAnnotationUtils.qualifiedBeanOfType(BeanFactoryAnnotationUtils.java:68)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.determineQualifiedTransactionManager(TransactionAspectSupport.java:406)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.determineTransactionManager(TransactionAspectSupport.java:384)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:284)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:185)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
    at com.sun.proxy.$Proxy56.findDefaultByKey(Unknown Source)
    11 replies
    spelka
    @spelka
    how do i edit an existing API's upstream endpoint? I dont see the ability to change that field anywhere in the GUI or in the API docs. I created a new test API with a "foobar" upstream endpoint, and I cant find "foobar" -anywhere-
    spelka
    @spelka
    I don't see how to do that from the documentation either. I am looking here at the documentation https://docs.gravitee.io/apim/3.x/apim_publisherguide_create_apis.html#manage_your_api but I'm not sure if this is the right page.
    Baptiste GAILLET
    @bat79a
    Hi I'm lauching mongoDB migration from 3.6 to 3.10 but one script for MongoDB is missing : https://docs.gravitee.io/apim/3.x/apim_installguide_migration.html#mongodb
    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