Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
C

Charles_Nkdl

@Charles_Nkdl
About
Posts
6
Topics
2
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • Metadata DB, Caching Redis and Celery Executor
    C Charles_Nkdl

    Hello Cloudron,

    I'm currently using Superset for dashboarding from various datasources. Some of these queries takes a lot of times and ressources actually and i wanted to optimize this.

    Some easy solutions to optimize these times in Superset is modifying multiples things in the config, which i want to do as i did in my local environment but sadly, i'm not too acquainted with Cloudron environnement so i wanted to ask for your feedback.

    1 / Changing the Sqlite Metadatabase of Superset

    When you initialize Superset, it does create a Sqlite DB but it does limit its potential. Superset handles and tested a postgreSQL or MySQL metadata backend. I checked the dockerfile from your git superset and the superset_config and a postgre metadb was already setup in the config file

    2/ Same thing with Redis and Celery, the config is present in the git of cloudron implementation (https://git.cloudron.io/cloudron/superset-app/-/blob/main/superset_config.py?ref_type=heads)

    Sadly, even if redis and celery is configured in the super superset_config in the git, it doesnt work as checking logs of celery and cache of redis using the connection port

    I tried fidgetting it with my local config but i do miss something to make it work, do you think you could help me on this point ???

    Thank you !

    Superset

  • Metadata DB, Caching Redis and Celery Executor
    C Charles_Nkdl
    gosu cloudron bash -c "source /app/pkg/env.sh && celery --app=superset.tasks.celery_app:app status"
    Loaded your LOCAL configuration at [/app/pkg/superset_config.py]
    2024-07-04 14:43:03,737:INFO:superset.utils.logging_configurator:logging was configured successfully
    2024-07-04 14:43:03,739:INFO:root:Configured event logger of type <class 'superset.utils.log.DBEventLogger'>
    /app/code/superset/flask_limiter/extension.py:333: UserWarning: Using the in-memory storage for tracking rate limits as no storage was explicitly specified. This is not recommended for production use. See: https://flask-limiter.readthedocs.io#configuring-a-storage-backend for documentation about configuring the storage backend.
      warnings.warn(
    ->  celery@d4fc71d0-b0cc-4acc-a9f8-ec7dd74b5096: OK
    
    1 node online.
    

    It does give me some feedback

    But the redis cache results are different as if not each data (dashboards , query, filters ....) was correctly cached in the results

    I won't lie i'm not good enough to decipher these redis logs and what they corresponds to exactly, but the loading speed between the reload of dashboards lacks something in the config file

    Sadly, i don't have the expertise to pinpoint which components is lacking something as i don't have much experience in celery nor redis... And superset documentation is quite obscure at some points,

    Sorry

    Superset

  • Superset API access through Cloudron Oauth
    C Charles_Nkdl

    Hello Cloudron Team and users,
    Sorry to bother you again since last time. I come here for help and guidance.
    I'm currently trying to fiddle something with Superset and embedding through the Superset API in local, which is ok.
    Now that i want to try it out on my Cloudron Superset Instance i'm quite stuck, as i can't get a hold of my JWT token through the Superset API :
    https://superset.apache.org/docs/api/ => /api/v1/security/login
    Which is i think related to the fact cloudron introduced a custom security manager in the superset_config.py file

    from cloudron_security_manager import CloudronSecurityManager
    CUSTOM_SECURITY_MANAGER = CloudronSecurityManager
    
    AUTH_TYPE = AUTH_OAUTH
    AUTH_ROLE_ADMIN = 'Admin'
    AUTH_ROLE_PUBLIC = 'Public'
    AUTH_USER_REGISTRATION = True
    AUTH_USER_REGISTRATION_ROLE = "Admin"
    
    OAUTH_PROVIDERS = [
        {
            'name':'Cloudron',
            'token_key':'access_token',
            'icon':'fa-address-card',
            'remote_app': {
                'client_id': os.environ["CLOUDRON_OIDC_CLIENT_ID"],
                'client_secret': os.environ["CLOUDRON_OIDC_CLIENT_SECRET"],
                'client_kwargs': {'scope': 'openid email profile'},
                'server_metadata_url': f"{CLOUDRON_OIDC_ISSUER}/.well-known/openid-configuration",
                'api_base_url': f"{CLOUDRON_OIDC_ISSUER}/",
                'access_token_url': f"{CLOUDRON_OIDC_TOKEN_ENDPOINT}",
                'authorize_url': f"{CLOUDRON_OIDC_AUTH_ENDPOINT}"
            }
        }
    ]
    

    Now more security is ok, but i don't know how i can access the JWT token going through cloudron security first, if someone have experience about this, i'm quite sure it's supposed to be this way but i may be wrong.
    Thank you

    Superset
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search