UWSGI_RADOS(1)

๐Ÿ“ฆ
version 2.0.31+2+0.0.3build2 ยท 6 versions
, in ubuntu resolute, ubuntu stonking

๐ŸŒธ NAME ๐ŸŒธ

bestie. sit down. hydrate. because we're about to talk about uwsgi_rados โ€” aka the fast (pure C), self-healing, developer-friendly WSGI server. yes. all of that. in one sentence. she's an icon, she's a legend, and she is the moment.

this is the manual page for UWSGI_RADOS(1), filed under User Commands, and it is long, so we're doing it in parts. no skipping. i will know. ๐Ÿซถ


โœจ SYNOPSIS โœจ

like. the whole vibe in one line:

uwsgi-core [options...]

that's it. that's the girl. everything else is just options on top of options. slay. ๐Ÿ’…


๐Ÿ‘‘ DESCRIPTION ๐Ÿ‘‘

okay so this is the part where we go through literally every single option, one at a time, and i tell you what each one does. no cap, no summarising, no "and then there were more options, you get it". we're doing all of them. grab a snack. ๐Ÿ“

๐Ÿ”Œ the socket era ๐Ÿ”Œ

  • -s, --socket โ€” bind to the specified UNIX/TCP socket using the default protocol. the classic. the starter pack.
  • -s, --uwsgi-socket โ€” bind to the specified UNIX/TCP socket using the uwsgi protocol. same flag letter, different protocol, we love a multitasker.
  • --suwsgi-socket โ€” bind to the specified UNIX/TCP socket using the uwsgi protocol over SSL. secure little thing.
  • --ssl-socket โ€” bind to the specified UNIX/TCP socket using the uwsgi protocol over SSL. yes bestie, she also exists, and she's separate, and i'm not merging them.
  • --http-socket โ€” bind to the specified UNIX/TCP socket using the HTTP protocol. your browser's new bestie.
  • --http-socket-modifier1 โ€” force the specified modifier1 when using the HTTP protocol. you don't get to choose naturally, so here's your override. ๐Ÿ’…
  • --http-socket-modifier2 โ€” force the specified modifier2 when using the HTTP protocol. same energy, different digit.
  • --http11-socket โ€” bind to the specified UNIX/TCP socket using HTTP 1.1 (Keep-Alive) protocol. she stays connected. obsessed.
  • --https-socket โ€” bind to the specified UNIX/TCP socket using HTTPS protocol. http but with a glow-up and a certificate.
  • --https-socket-modifier1 โ€” force the specified modifier1 when using the HTTPS protocol.
  • --https-socket-modifier2 โ€” force the specified modifier2 when using the HTTPS protocol.
  • --fastcgi-socket โ€” bind to the specified UNIX/TCP socket using FastCGI protocol.
  • --fastcgi-nph-socket โ€” bind to the specified UNIX/TCP socket using FastCGI protocol (nph mode). nph. periodt.
  • --fastcgi-modifier1 โ€” force the specified modifier1 when using FastCGI protocol.
  • --fastcgi-modifier2 โ€” force the specified modifier2 when using FastCGI protocol.
  • --scgi-socket โ€” bind to the specified UNIX/TCP socket using SCGI protocol.
  • --scgi-nph-socket โ€” bind to the specified UNIX/TCP socket using SCGI protocol (nph mode).
  • --scgi-modifier1 โ€” force the specified modifier1 when using SCGI protocol.
  • --scgi-modifier2 โ€” force the specified modifier2 when using SCGI protocol.
  • --raw-socket โ€” bind to the specified UNIX/TCP socket using RAW protocol. no manners, no framing, just vibes.
  • --raw-modifier1 โ€” force the specified modifier1 when using RAW protocol.
  • --raw-modifier2 โ€” force the specified modifier2 when using RAW protocol.
  • --puwsgi-socket โ€” bind to the specified UNIX/TCP socket using persistent uwsgi protocol (puwsgi). she never leaves the group chat.
  • --protocol โ€” force the specified protocol for default sockets.
  • --socket-protocol โ€” force the specified protocol for default sockets. (yes, same description. no, i'm not skipping one. they're both here. ๐Ÿ’€)
  • --shared-socket โ€” create a shared socket for advanced jailing or ipc. fancy girl behaviour.
  • --undeferred-shared-socket โ€” create a shared socket for advanced jailing or ipc (undeferred mode).

๐Ÿง‘๐Ÿณ workers, harakiri & the whole crew ๐Ÿง‘๐Ÿณ

  • -p, --processes โ€” spawn the specified number of workers/processes. more workers = more hands = more slay.
  • -p, --workers โ€” spawn the specified number of workers/processes. same flag, same job, different name. they're twins, not duplicates. ๐Ÿซถ
  • --thunder-lock โ€” serialize accept() usage (if possible). the "if possible" is doing a lot of heavy lifting there bestie, don't @ me.
  • -t, --harakiri โ€” set harakiri timeout. yes it's named after ritual suicide. yes it means your worker gets merked if it's too slow. moving on. ๐Ÿ˜ญ
  • --harakiri-verbose โ€” enable verbose mode for harakiri. so you get the full play-by-play of the murder.
  • --harakiri-graceful-timeout โ€” interval between graceful harakiri attempt and a sigkill. so: ask nicely, then don't.
  • --harakiri-graceful-signal โ€” use this signal instead of sigterm for graceful harakiri attempts. customise your goodbye. ๐ŸŽ€
  • --harakiri-queue-threshold โ€” only trigger harakiri if queue is greater than this threshold. she's polite about it.
  • --harakiri-no-arh โ€” do not enable harakiri during after-request-hook.
  • --no-harakiri-arh โ€” do not enable harakiri during after-request-hook. (same thing, different order of words. we love a trio.)
  • --no-harakiri-after-req-hook โ€” do not enable harakiri during after-request-hook. three of them. three. i'm just the messenger. ๐Ÿ’€
  • --backtrace-depth โ€” set backtrace depth. how far back in the drama do we go.
  • --mule-harakiri โ€” set harakiri timeout for mule tasks. even the mules get timed out.

๐Ÿ“œ config & placeholder nation ๐Ÿ“œ

  • -x, --xmlconfig โ€” load config from xml file.
  • -x, --xml โ€” load config from xml file. twin behaviour again, we stan.
  • --config โ€” load configuration using the pluggable system. plug it in, plug it in. ๐Ÿ”Œ
  • --fallback-config โ€” re-exec uwsgi with the specified config when exit code is 1. the backup plan. the situationship safety net.
  • --strict โ€” enable strict mode (placeholder cannot be used). no placeholders. none. she's on her no-nonsense era.
  • --skip-zero โ€” skip check of file descriptor 0.
  • --skip-atexit โ€” skip atexit hooks (ignored by the master).
  • --skip-atexit-teardown โ€” skip atexit teardown (ignored by the master).
  • -S, --set โ€” set a placeholder or an option. versatile queen.
  • --set-placeholder โ€” set a placeholder.
  • --set-ph โ€” set a placeholder. short queen.
  • --get โ€” print the specified option value and exit.
  • --declare-option โ€” declare a new uWSGI custom option.
  • --declare-option2 โ€” declare a new uWSGI custom option (non-immediate).
  • --resolve โ€” place the result of a dns query in the specified placeholder, sytax: placeholder=name (immediate option). and yes, sytax is spelled like that in the original and i am not fixing it, she's canon now. ๐Ÿ˜ญ

๐Ÿ” the opt logic cinematic universe ๐Ÿ”

this whole section is basically if/for but for your config file. lowkey iconic.
  • --for โ€” (opt logic) for cycle.
  • --for-glob โ€” (opt logic) for cycle (expand glob).
  • --for-times โ€” (opt logic) for cycle (expand the specified num to a list starting from 1).
  • --for-readline โ€” (opt logic) for cycle (expand the specified file to a list of lines).
  • --endfor โ€” (opt logic) end for cycle.
  • --end-for โ€” (opt logic) end for cycle.
  • --if-opt โ€” (opt logic) check for option.
  • --if-not-opt โ€” (opt logic) check for option.
  • --if-env โ€” (opt logic) check for environment variable.
  • --if-not-env โ€” (opt logic) check for environment variable.
  • --ifenv โ€” (opt logic) check for environment variable.
  • --if-reload โ€” (opt logic) check for reload.
  • --if-not-reload โ€” (opt logic) check for reload.
  • --if-hostname โ€” (opt logic) check for hostname.
  • --if-not-hostname โ€” (opt logic) check for hostname.
  • --if-hostname-match โ€” (opt logic) try to match hostname against a regular expression.
  • --if-not-hostname-match โ€” (opt logic) try to match hostname against a regular expression.
  • --if-exists โ€” (opt logic) check for file/directory existence.
  • --if-not-exists โ€” (opt logic) check for file/directory existence.
  • --ifexists โ€” (opt logic) check for file/directory existence.
  • --if-plugin โ€” (opt logic) check for plugin.
  • --if-not-plugin โ€” (opt logic) check for plugin.
  • --ifplugin โ€” (opt logic) check for plugin.
  • --if-file โ€” (opt logic) check for file existence.
  • --if-not-file โ€” (opt logic) check for file existence.
  • --if-dir โ€” (opt logic) check for directory existence.
  • --if-not-dir โ€” (opt logic) check for directory existence.
  • --ifdir โ€” (opt logic) check for directory existence.
  • --if-directory โ€” (opt logic) check for directory existence.
  • --endif โ€” (opt logic) end if.
  • --end-if โ€” (opt logic) end if.
  • --blacklist โ€” set options blacklist context.
  • --end-blacklist โ€” clear options blacklist context.
  • --whitelist โ€” set options whitelist context.
  • --end-whitelist โ€” clear options whitelist context.

๐Ÿ˜ค write errors & the SIGPIPE agenda ๐Ÿ˜ค

  • --ignore-sigpipe โ€” do not report (annoying) SIGPIPE. she said enough.
  • --ignore-write-errors โ€” do not report (annoying) write()/writev() errors. same energy.
  • --write-errors-tolerance โ€” set the maximum number of allowed write errors (default: no tolerance). default is zero patience. periodt.
  • --write-errors-exception-only โ€” only raise an exception on write errors giving control to the app itself.
  • --disable-write-exception โ€” disable exception generation on write()/writev().

๐Ÿงฉ templates, includes & daemon drama ๐Ÿงฉ

  • --inherit โ€” use the specified file as config template.
  • --include โ€” include the specified file as immediate configuration.
  • --inject-before โ€” inject a text file before the config file (advanced templating).
  • --inject-after โ€” inject a text file after the config file (advanced templating).
  • -d, --daemonize โ€” daemonize uWSGI. bye bestie, you live in the background now. ๐Ÿ‘‹
  • --daemonize2 โ€” daemonize uWSGI after app loading. slightly more considerate about it.
  • --stop โ€” stop an instance.
  • --reload โ€” reload an instance.
  • --pause โ€” pause an instance.
  • --suspend โ€” suspend an instance.
  • --resume โ€” resume an instance.
  • --connect-and-read โ€” connect to a socket and wait for data from it.
  • --extract โ€” fetch/dump any supported address to stdout.

โš™๏ธ tuning, buffers & the little knobs โš™๏ธ

  • -l, --listen โ€” set the socket listen queue size.
  • -v, --max-vars โ€” set the amount of internal iovec/vars structures.
  • --max-apps โ€” set the maximum number of per-worker applications.
  • -b, --buffer-size โ€” set internal buffer size.
  • -m, --memory-report โ€” enable memory report.
  • --profiler โ€” enable the specified profiler.
  • -c, --cgi-mode โ€” force CGI-mode for plugins supporting it.
  • -a, --abstract-socket โ€” force UNIX socket in abstract mode (Linux only).
  • -C, --chmod-socket โ€” chmod-socket.
  • -C, --chmod โ€” chmod-socket. same flag letter, same job, two names. iconic.
  • --chown-socket โ€” chown unix sockets.
  • --umask โ€” set umask.
  • --freebind โ€” put socket in freebind mode.
  • --map-socket โ€” map sockets to specific workers.
  • -T, --enable-threads โ€” enable threads (stub option this is true by default). so she's already on. she was always on. ๐Ÿ’…
  • --no-threads-wait โ€” do not wait for threads cancellation on quit/reload.
  • --auto-procname โ€” automatically set processes name to something meaningful.
  • --procname-prefix โ€” add a prefix to the process names.
  • --procname-prefix-spaced โ€” add a spaced prefix to the process names.
  • --procname-append โ€” append a string to process names.
  • --procname โ€” set process names.
  • --procname-master โ€” set master process name.
  • -i, --single-interpreter โ€” do not use multiple interpreters (where available).
  • --need-app โ€” exit if no app can be loaded. she does not do empty-handed. ๐Ÿ˜ค
  • -M, --master โ€” enable master process. the main character, literally.
  • --honour-stdin โ€” do not remap stdin to /dev/null.

๐Ÿ‘‘ the emperor section ๐Ÿ‘‘ (yes she gets her own)

  • --emperor โ€” run the Emperor.
  • --emperor-proxy-socket โ€” force the vassal to became an Emperor proxy. (and yes, became. original. keeping it. ๐Ÿซถ)
  • --emperor-wrapper โ€” set a binary wrapper for vassals.
  • --emperor-wrapper-override โ€” set a binary wrapper for vassals to try before the default one.
  • --emperor-wrapper-fallback โ€” set a binary wrapper for vassals to try as a last resort.
  • --emperor-nofollow โ€” do not follow symlinks when checking for mtime.
  • --emperor-procname โ€” set the Emperor process name.
  • --emperor-freq โ€” set the Emperor scan frequency (default 3 seconds).
  • --emperor-required-heartbeat โ€” set the Emperor tolerance about heartbeats. ๐Ÿ’“
  • --emperor-curse-tolerance โ€” set the Emperor tolerance about cursed vassals.

okay bestie that's part one and there is so much more coming. don't go anywhere. ๐Ÿฆ‹

  • --emperor-pidfile โ€” write the Emperor pid in the file you specify. Emperor pid goes here, bestie ๐Ÿ“
  • --emperor-tyrant โ€” put the Emperor in Tyrant mode. Tyrant mode, periodt ๐Ÿ‘‘
  • --emperor-tyrant-nofollow โ€” in Tyrant mode, do not follow symlinks when checking for uid/gid. no symlink following, okay? ๐Ÿ”
  • --emperor-stats โ€” run the Emperor stats server. ๐Ÿ“Š
  • --emperor-stats-server โ€” run the Emperor stats server. same stats server, different flag name ๐Ÿ’…
  • --early-emperor โ€” spawn the emperor as soon as possible. early bird energy ๐Ÿฆ
  • --emperor-broodlord โ€” run the emperor in BroodLord mode. BroodLord mode activated ๐Ÿฆ‹
  • --emperor-throttle โ€” set throttling level (in milliseconds) for bad behaving vassals (default 1000). bad vassals get throttled โณ
  • --emperor-max-throttle โ€” set max throttling level (in milliseconds) for bad behaving vassals (default 3 minutes). max throttle, bestie ๐Ÿ›‘
  • --emperor-magic-exec โ€” prefix vassals config files with exec:// if they have the executable bit. magic exec, iykyk โœจ
  • --emperor-on-demand-extension โ€” search for a text file (vassal name + extension) containing the on demand socket name. on demand vibes ๐Ÿ”Œ
  • --emperor-on-demand-ext โ€” search for a text file (vassal name + extension) containing the on demand socket name. same thing, shorter name ๐Ÿ’…
  • --emperor-on-demand-directory โ€” enable on demand mode binding to the unix socket in the specified directory named like the vassal + .socket. unix socket time ๐Ÿงฆ
  • --emperor-on-demand-dir โ€” enable on demand mode binding to the unix socket in the specified directory named like the vassal + .socket. directory edition ๐Ÿ—‚๏ธ
  • --emperor-on-demand-exec โ€” use the output of the specified command as on demand socket name (the vassal name is passed as the only argument). exec says the socket name ๐Ÿ“ฃ
  • --emperor-extra-extension โ€” allows the specified extension in the Emperor (vassal will be called with --config). extra extension allowed โœ…
  • --emperor-extra-ext โ€” allows the specified extension in the Emperor (vassal will be called with --config). same but short โœ‚๏ธ
  • --emperor-no-blacklist โ€” disable Emperor blacklisting subsystem. no blacklist, no problem ๐Ÿšซ
  • --emperor-use-clone โ€” use clone() instead of fork() passing the specified unshare() flags. clone() era ๐Ÿงฌ
  • --emperor-graceful-shutdown โ€” use vassals graceful shutdown during ragnarok. ragnarok but make it graceful ๐ŸŒช๏ธ
  • --emperor-cap โ€” set vassals capability. cap it off ๐Ÿงข
  • --vassals-cap โ€” set vassals capability. same cap energy ๐Ÿงข
  • --vassal-cap โ€” set vassals capability. one vassal, one cap ๐Ÿงข
  • --imperial-monitor-list โ€” list enabled imperial monitors. show me the monitors ๐Ÿ“‹
  • --imperial-monitors-list โ€” list enabled imperial monitors. plural monitors, same list ๐Ÿ“‹
  • --vassals-inherit โ€” add config templates to vassals config (uses --inherit). inherit the config ๐Ÿงฌ
  • --vassals-include โ€” include config templates to vassals config (uses --include instead of --inherit). include, not inherit ๐Ÿ“Ž
  • --vassals-inherit-before โ€” add config templates to vassals config (uses --inherit, parses before the vassal file). inherit before, bestie โฎ๏ธ
  • --vassals-include-before โ€” include config templates to vassals config (uses --include instead of --inherit, parses before the vassal file). include before โฎ๏ธ
  • --vassals-start-hook โ€” run the specified command before each vassal starts. start hook, go off ๐Ÿ
  • --vassals-stop-hook โ€” run the specified command after vassal's death. stop hook after death โšฐ๏ธ
  • --vassal-sos โ€” ask emperor for reinforcement when overloaded. SOS bestie ๐Ÿ†˜
  • --vassal-sos-backlog โ€” ask emperor for sos if backlog queue has more items than the value specified. backlog SOS threshold ๐Ÿ“ˆ
  • --vassals-set โ€” automatically set the specified option (via --set) for every vassal. set it for all vassals ๐Ÿ› ๏ธ
  • --vassal-set โ€” automatically set the specified option (via --set) for every vassal. same set, singular flag ๐Ÿ› ๏ธ
  • --heartbeat โ€” announce healthiness to the emperor. heartbeat check ๐Ÿ’“
  • --reload-mercy โ€” set the maximum time (in seconds) we wait for workers and other processes to die during reload/shutdown. mercy time โฑ๏ธ
  • --worker-reload-mercy โ€” set the maximum time (in seconds) a worker can take to reload/shutdown (default is 60). worker mercy: 60 seconds default ๐Ÿ˜‡
  • --mule-reload-mercy โ€” set the maximum time (in seconds) a mule can take to reload/shutdown (default is 60). mule mercy: 60 seconds default ๐Ÿด
  • --exit-on-reload โ€” force exit even if a reload is requested. exit on reload, no takebacks ๐Ÿšช
  • --die-on-term โ€” exit instead of brutal reload on SIGTERM. die on TERM ๐Ÿ’€
  • --force-gateway โ€” force the spawn of the first registered gateway without a master. force gateway, no master needed ๐Ÿšช
  • -h|--help โ€” show this help. help is here ๐Ÿ†˜
  • -h|--usage โ€” show this help. usage is help ๐Ÿ†˜
  • --print-sym โ€” print content of the specified binary symbol. print the symbol ๐Ÿ”ฃ
  • --print-symbol โ€” print content of the specified binary symbol. same symbol, longer name ๐Ÿ”ฃ
  • -r|--reaper โ€” call waitpid(-1,...) after each request to get rid of zombies. reap those zombies ๐ŸงŸ
  • -R|--max-requests โ€” reload workers after the specified amount of managed requests. max requests, then reload ๐Ÿ”„
  • --max-requests-delta โ€” add (worker_id * delta) to the max_requests value of each worker. delta math for max requests โž•
  • --min-worker-lifetime โ€” number of seconds worker must run before being reloaded (default is 10). min worker lifetime: 10s โณ
  • --max-worker-lifetime โ€” reload workers after the specified amount of seconds (default is disabled). max worker lifetime, off by default โฒ๏ธ
  • --max-worker-lifetime-delta โ€” add (worker_id * delta) seconds to the max_worker_lifetime value of each worker. delta for max worker lifetime โž•
  • -z|--socket-timeout โ€” set internal sockets timeout. socket timeout vibes โฐ
  • --no-fd-passing โ€” disable file descriptor passing. no fd passing ๐Ÿšซ
  • --locks โ€” create the specified number of shared locks. locks, locks, locks ๐Ÿ”’
  • --lock-engine โ€” set the lock engine. choose your lock engine โš™๏ธ
  • --ftok โ€” set the ipcsem key via ftok() for avoiding duplicates. ftok() for unique keys ๐Ÿ”‘
  • --persistent-ipcsem โ€” do not remove ipcsem's on shutdown. keep ipcsem around ๐Ÿ’พ
  • -A|--sharedarea โ€” create a raw shared memory area of specified pages (note: it supports keyval too). sharedarea, keyval supported too ๐Ÿง 
  • --safe-fd โ€” do not close the specified file descriptor. safe fd, don't close it ๐Ÿ›ก๏ธ
  • --fd-safe โ€” do not close the specified file descriptor. same safe fd energy ๐Ÿ›ก๏ธ
  • --cache โ€” create a shared cache containing given elements. cache time ๐Ÿ—ƒ๏ธ
  • --cache-blocksize โ€” set cache blocksize. cache blocksize ๐Ÿ“ฆ
  • --cache-store โ€” enable persistent cache to disk. persistent cache to disk ๐Ÿ’ฝ
  • --cache-store-sync โ€” set frequency of sync for persistent cache. sync frequency for cache ๐Ÿ”„
  • --cache-no-expire โ€” disable auto sweep of expired items. no auto expire sweep ๐Ÿšซ
  • --cache-expire-freq โ€” set the frequency of cache sweeper scans (default 3 seconds). cache sweeper scans: 3s default ๐Ÿงน
  • --cache-report-freed-items โ€” constantly report the cache item freed by the sweeper (use only for debug). debug only: report freed items ๐Ÿž
  • --cache-udp-server โ€” bind the cache udp server (used only for set/update/delete) to the specified socket. cache UDP server socket ๐Ÿ“ก
  • --cache-udp-node โ€” send cache update/deletion to the specified cache udp server. send updates to UDP node ๐Ÿ“ค
  • --cache-sync โ€” copy the whole content of another uWSGI cache server on server startup. sync whole cache on startup ๐Ÿ”„
  • --cache-use-last-modified โ€” update last_modified_at timestamp on every cache item modification (default is disabled). last_modified_at updates, off by default ๐Ÿ•’
  • --add-cache-item โ€” add an item in the cache. add cache item โž•
  • --load-file-in-cache โ€” load a static file in the cache. load file into cache ๐Ÿ“„
  • --load-file-in-cache-gzip โ€” load a static file in the cache with gzip compression. load file into cache, gzipped ๐Ÿ—œ๏ธ
  • --cache2 โ€” create a new generation shared cache (keyval syntax). cache2, keyval syntax โœจ
  • --queue โ€” enable shared queue. shared queue on ๐Ÿšถ
  • --queue-blocksize โ€” set queue blocksize. queue blocksize ๐Ÿ“ฆ
  • --queue-store โ€” enable persistent queue to disk. persistent queue to disk ๐Ÿ’ฝ
  • --queue-store-sync โ€” set frequency of sync for persistent queue. queue sync frequency ๐Ÿ”„
  • -Q|--spooler โ€” run a spooler on the specified directory. spooler time ๐Ÿงต
  • --spooler-external โ€” map spoolers requests to a spooler directory managed by an external instance. external spooler directory ๐ŸŒ
  • --spooler-ordered โ€” try to order the execution of spooler tasks. ordered spooler tasks ๐Ÿ“‹
  • --spooler-chdir โ€” chdir() to specified directory before each spooler task. chdir before spooler task ๐Ÿ“
  • --spooler-processes โ€” set the number of processes for spoolers. spooler process count ๐Ÿ‘ฏ
  • --spooler-quiet โ€” do not be verbose with spooler tasks. quiet spooler ๐Ÿคซ
  • --spooler-max-tasks โ€” set the maximum number of tasks to run before recycling a spooler. max tasks before spooler recycle ๐Ÿ”„
  • --spooler-harakiri โ€” set harakiri timeout for spooler tasks. harakiri timeout for spooler ๐Ÿ—ก๏ธ
  • --spooler-frequency โ€” set spooler frequency. spooler frequency ๐Ÿ“ถ
  • --spooler-freq โ€” set spooler frequency. same frequency, short name ๐Ÿ“ถ
  • --mule โ€” add a mule. add a mule ๐Ÿด
  • --mules โ€” add the specified number of mules. add many mules ๐Ÿด๐Ÿด
  • --farm โ€” add a mule farm. mule farm time ๐Ÿšœ
  • --mule-msg-size โ€” set mule message buffer size. mule message buffer size ๐Ÿ“จ
  • --signal โ€” send a uwsgi signal to a server. send a signal ๐Ÿ“ถ
  • --signal-bufsize โ€” set buffer size for signal queue. signal queue buffer size ๐Ÿ“ฆ
  • --signals-bufsize โ€” set buffer size for signal queue. same signal buffer size ๐Ÿ“ฆ
  • --signal-timer โ€” add a timer (syntax: <signal> <seconds>). signal timer syntax โฒ๏ธ
  • --timer โ€” add a timer (syntax: <signal> <seconds>). timer alias โฒ๏ธ
  • --signal-rbtimer โ€” add a redblack timer (syntax: <signal> <seconds>). redblack timer syntax ๐ŸŒณ
  • --rbtimer โ€” add a redblack timer (syntax: <signal> <seconds>). rbtimer alias ๐ŸŒณ
  • --rpc-max โ€” maximum number of rpc slots (default: 64). rpc max: 64 default ๐Ÿ“ž
  • -L|--disable-logging โ€” disable request logging. no request logging ๐Ÿ”‡
  • --flock โ€” lock the specified file before starting, exit if locked. flock and exit if locked ๐Ÿ”’
  • --flock-wait โ€” lock the specified file before starting, wait if locked. flock and wait if locked โณ
  • --flock2 โ€” lock the specified file after logging/daemon setup, exit if locked. flock2: after logging/daemon, exit if locked ๐Ÿ”’
  • --flock-wait2 โ€” lock the specified file after logging/daemon setup, wait if locked. flock-wait2: after logging/daemon, wait if locked โณ
  • --pidfile โ€” create pidfile (before privileges drop). pidfile before privilege drop ๐Ÿ“„
  • --pidfile2 โ€” create pidfile (after privileges drop). pidfile after privilege drop ๐Ÿ“„
  • --safe-pidfile โ€” create safe pidfile (before privileges drop). safe pidfile before drop ๐Ÿ›ก๏ธ
  • --safe-pidfile2 โ€” create safe pidfile (after privileges drop). safe pidfile after drop ๐Ÿ›ก๏ธ
  • --chroot โ€” chroot() to the specified directory. chroot jail ๐Ÿฐ
  • --pivot-root โ€” pivot_root() to the specified directories (new_root and put_old must be separated with a space). pivot_root with new_root and put_old separated by space ๐Ÿ”„
  • --pivot_root โ€” pivot_root() to the specified directories (new_root and put_old must be separated with a space). same pivot_root, underscore spelling ๐Ÿ”„
  • --uid โ€” setuid to the specified user/uid. setuid to user/uid ๐Ÿ‘ค
  • --gid โ€” setgid to the specified group/gid. setgid to group/gid ๐Ÿ‘ฅ
  • --add-gid โ€” add the specified group id to the process credentials. add group id to credentials โž•
  • --immediate-uid โ€” setuid to the specified user/uid IMMEDIATELY. setuid IMMEDIATELY โšก
  • --immediate-gid โ€” setgid to the specified group/gid IMMEDIATELY. setgid IMMEDIATELY โšก
  • --no-initgroups โ€” disable additional groups set via initgroups(). no initgroups extra groups ๐Ÿšซ
  • --cap โ€” set process capability. set process capability ๐Ÿงข
  • --unshare โ€” unshare() part of the processes and put it in a new namespace. unshare into new namespace ๐Ÿช
  • --unshare2 โ€” unshare() part of the processes and put it in a new namespace after rootfs change. unshare after rootfs change ๐Ÿช
  • --setns-socket โ€” expose a unix socket returning namespace fds from /proc/self/ns. setns socket exposing namespace fds ๐Ÿ”Œ
  • --setns-socket-skip โ€” skip the specified entry when sending setns file descriptors. skip entry for setns fds โญ๏ธ
  • --setns-skip โ€” skip the specified entry when sending setns file descriptors. same skip, shorter name โญ๏ธ
  • --setns โ€” join a namespace created by an external uWSGI instance. join external namespace ๐Ÿšช
  • --setns-preopen โ€” open /proc/self/ns as soon as possible and cache fds. preopen /proc/self/ns and cache fds ๐Ÿ“‚
  • --jailed โ€” marks the instance as jailed (which forces the post_jail hooks to actually run). the vibes are incarcerated fr ๐Ÿ’…
  • --refork โ€” does a fork() again after privileges drop. super useful for jailing systems ๐Ÿฆ‹
  • --re-fork โ€” same thing bestie: fork() again after privileges drop. useful for jailing systems.
  • --refork-as-root โ€” fork() again before privileges drop. useful for jailing systems โœจ
  • --re-fork-as-root โ€” yep, the twin: fork() again before privileges drop. useful for jailing systems.
  • --refork-post-jail โ€” fork() again after jailing. useful for jailing systems ๐ŸŽ€
  • --re-fork-post-jail โ€” and its other spelling: fork() again after jailing. useful for jailing systems.

โœจ the hook era โœจ

ok so hooks are like little callbacks that fire at Very Specific Moments. there's a LOT of them. buckle up bestie ๐Ÿซถ
  • --hook-asap โ€” runs the specified hook as soon as possible โšก
  • --hook-pre-jail โ€” runs the specified hook before jailing.
  • --hook-post-jail โ€” runs the specified hook after jailing.
  • --hook-in-jail โ€” runs the specified hook in jail after initialization.
  • --hook-as-root โ€” runs the specified hook before privileges drop ๐Ÿ‘‘
  • --hook-as-user โ€” runs the specified hook after privileges drop.
  • --hook-as-user-atexit โ€” runs the specified hook before app exit and reload.
  • --hook-pre-app โ€” runs the specified hook before app loading.
  • --hook-post-app โ€” runs the specified hook after app loading.
  • --hook-post-fork โ€” runs the specified hook after each fork.
  • --hook-accepting โ€” runs the specified hook after each worker enters the accepting phase ๐ŸŒ€
  • --hook-accepting1 โ€” runs the specified hook after the first worker enters the accepting phase.
  • --hook-accepting-once โ€” runs the specified hook after each worker enters the accepting phase (once per-instance).
  • --hook-accepting1-once โ€” runs the specified hook after the first worker enters the accepting phase (once per instance).
  • --hook-master-start โ€” runs the specified hook when the Master starts ๐Ÿ‘‘
  • --hook-touch โ€” runs the specified hook when the specified file is touched (syntax: <file> <action>).
  • --hook-emperor-start โ€” runs the specified hook when the Emperor starts.
  • --hook-emperor-stop โ€” runs the specified hook when the Emperor sends a stop message.
  • --hook-emperor-reload โ€” runs the specified hook when the Emperor sends a reload message.
  • --hook-emperor-lost โ€” runs the specified hook when the Emperor connection is lost ๐Ÿ˜ญ
  • --hook-as-vassal โ€” runs the specified hook before exec()ing the vassal.
  • --hook-as-emperor โ€” runs the specified hook in the emperor after the vassal has been started.
  • --hook-as-mule โ€” runs the specified hook in each mule ๐Ÿด
  • --hook-as-gateway โ€” runs the specified hook in each gateway.
  • --after-request-hook โ€” runs the specified function/symbol after each request.
  • --after-request-call โ€” runs the specified function/symbol after each request.

๐Ÿ’… the exec era ๐Ÿ’…

  • --exec-asap โ€” runs the specified command as soon as possible โšก
  • --exec-pre-jail โ€” runs the specified command before jailing.
  • --exec-post-jail โ€” runs the specified command after jailing.
  • --exec-in-jail โ€” runs the specified command in jail after initialization.
  • --exec-as-root โ€” runs the specified command before privileges drop ๐Ÿ‘‘
  • --exec-as-user โ€” runs the specified command after privileges drop.
  • --exec-as-user-atexit โ€” runs the specified command before app exit and reload.
  • --exec-pre-app โ€” runs the specified command before app loading.
  • --exec-post-app โ€” runs the specified command after app loading.
  • --exec-as-vassal โ€” runs the specified command before exec()ing the vassal.
  • --exec-as-emperor โ€” runs the specified command in the emperor after the vassal has been started.

๐Ÿฆ‹ mount / umount section, she's here ๐Ÿฆ‹

  • --mount-asap โ€” mounts filesystem as soon as possible โšก
  • --mount-pre-jail โ€” mounts filesystem before jailing.
  • --mount-post-jail โ€” mounts filesystem after jailing.
  • --mount-in-jail โ€” mounts filesystem in jail after initialization.
  • --mount-as-root โ€” mounts filesystem before privileges drop ๐Ÿ‘‘
  • --mount-as-vassal โ€” mounts filesystem before exec()ing the vassal.
  • --mount-as-emperor โ€” mounts filesystem in the emperor after the vassal has been started.
  • --umount-asap โ€” unmounts filesystem as soon as possible โšก
  • --umount-pre-jail โ€” unmounts filesystem before jailing.
  • --umount-post-jail โ€” unmounts filesystem after jailing.
  • --umount-in-jail โ€” unmounts filesystem in jail after initialization.
  • --umount-as-root โ€” unmounts filesystem before privileges drop ๐Ÿ‘‘
  • --umount-as-vassal โ€” unmounts filesystem before exec()ing the vassal.
  • --umount-as-emperor โ€” unmounts filesystem in the emperor after the vassal has been started.

๐ŸŒˆ waiting era (she's patient, she's giving main character) ๐ŸŒˆ

  • --wait-for-interface โ€” waits for the specified network interface to come up before running root hooks.
  • --wait-for-interface-timeout โ€” sets the timeout for wait-for-interface.
  • --wait-interface โ€” waits for the specified network interface to come up before running root hooks.
  • --wait-interface-timeout โ€” sets the timeout for wait-for-interface.
  • --wait-for-iface โ€” waits for the specified network interface to come up before running root hooks.
  • --wait-for-iface-timeout โ€” sets the timeout for wait-for-interface.
  • --wait-iface โ€” waits for the specified network interface to come up before running root hooks.
  • --wait-iface-timeout โ€” sets the timeout for wait-for-interface.
  • --wait-for-fs โ€” waits for the specified filesystem item to appear before running root hooks.
  • --wait-for-file โ€” waits for the specified file to appear before running root hooks ๐Ÿ“„
  • --wait-for-dir โ€” waits for the specified directory to appear before running root hooks ๐Ÿ“
  • --wait-for-mountpoint โ€” waits for the specified mountpoint to appear before running root hooks.
  • --wait-for-fs-timeout โ€” sets the timeout for wait-for-fs/file/dir.
  • --wait-for-socket โ€” waits for the specified socket to be ready before loading apps ๐Ÿ”Œ
  • --wait-for-socket-timeout โ€” sets the timeout for wait-for-socket.

๐Ÿงš the call era ๐Ÿงš

  • --call-asap โ€” calls the specified function as soon as possible โšก
  • --call-pre-jail โ€” calls the specified function before jailing.
  • --call-post-jail โ€” calls the specified function after jailing.
  • --call-in-jail โ€” calls the specified function in jail after initialization.
  • --call-as-root โ€” calls the specified function before privileges drop ๐Ÿ‘‘
  • --call-as-user โ€” calls the specified function after privileges drop.
  • --call-as-user-atexit โ€” calls the specified function before app exit and reload.
  • --call-pre-app โ€” calls the specified function before app loading.
  • --call-post-app โ€” calls the specified function after app loading.
  • --call-as-vassal โ€” calls the specified function() before exec()ing the vassal.
  • --call-as-vassal1 โ€” calls the specified function(char *) before exec()ing the vassal.
  • --call-as-vassal3 โ€” calls the specified function(char *, uid_t, gid_t) before exec()ing the vassal.
  • --call-as-emperor โ€” calls the specified function() in the emperor after the vassal has been started.
  • --call-as-emperor1 โ€” calls the specified function(char *) in the emperor after the vassal has been started.
  • --call-as-emperor2 โ€” calls the specified function(char *, pid_t) in the emperor after the vassal has been started.
  • --call-as-emperor4 โ€” calls the specified function(char *, pid_t, uid_t, gid_t) in the emperor after the vassal has been started.

๐ŸŽ€ config loading + server modes ๐ŸŽ€

  • --ini โ€” load config from ini file.
  • -y, --yaml โ€” load config from yaml file.
  • -y, --yml โ€” load config from yaml file.
  • -j, --json โ€” load config from json file.
  • -j, --js โ€” load config from json file.
  • --weight โ€” weight of the instance (used by clustering/lb/subscriptions) โš–๏ธ
  • --auto-weight โ€” set weight of the instance (used by clustering/lb/subscriptions) automatically.
  • --no-server โ€” force no-server mode.
  • --command-mode โ€” force command mode.
  • --no-defer-accept โ€” disable deferred-accept on sockets.
  • --tcp-nodelay โ€” enable TCP NODELAY on each request.
  • --so-keepalive โ€” enable TCP KEEPALIVEs.
  • --so-send-timeout โ€” set SO_SNDTIMEO.
  • --socket-send-timeout โ€” set SO_SNDTIMEO.
  • --so-write-timeout โ€” set SO_SNDTIMEO.
  • --socket-write-timeout โ€” set SO_SNDTIMEO.
  • --socket-sndbuf โ€” set SO_SNDBUF.
  • --socket-rcvbuf โ€” set SO_RCVBUF.
  • --shutdown-sockets โ€” force calling shutdown() in addition to close() when sockets are destroyed.

๐ŸŒธ limits + reloads ๐ŸŒธ

  • --limit-as โ€” limit processes address space/vsz.
  • --limit-nproc โ€” limit the number of spawnable processes.
  • --reload-on-as โ€” reload if address space is higher than specified megabytes.
  • --reload-on-rss โ€” reload if rss memory is higher than specified megabytes.
  • --evil-reload-on-as โ€” force the master to reload a worker if its address space is higher than specified megabytes ๐Ÿ˜ˆ
  • --evil-reload-on-rss โ€” force the master to reload a worker if its rss memory is higher than specified megabytes ๐Ÿ˜ˆ
  • --mem-collector-freq โ€” set the memory collector frequency when evil reloads are in place.
  • --reload-on-fd โ€” reload if the specified file descriptor is ready.
  • --brutal-reload-on-fd โ€” brutal reload if the specified file descriptor is ready ๐Ÿ’€
  • --ksm โ€” enable Linux KSM.
  • --pcre-jit โ€” enable pcre jit (if available).
  • --never-swap โ€” lock all memory pages avoiding swapping ๐Ÿ”’

โญ touch-reload era (she reacts to file changes, periodt) โญ

  • --touch-reload โ€” reload uWSGI if the specified file is modified/touched.
  • --touch-workers-reload โ€” trigger reload of (only) workers if the specified file is modified/touched.
  • --touch-mules-reload โ€” reload mules if the specified file is modified/touched ๐Ÿด
  • --touch-spoolers-reload โ€” reload spoolers if the specified file is modified/touched.
  • --touch-chain-reload โ€” trigger chain reload if the specified file is modified/touched.
  • --touch-logrotate โ€” trigger logrotation if the specified file is modified/touched.
  • --touch-logreopen โ€” trigger log reopen if the specified file is modified/touched.
  • --touch-exec โ€” run command when the specified file is modified/touched (syntax: file command).
  • --touch-signal โ€” when that one file gets modified or touched, it sends a signal, bestie. syntax is file signal.
  • --fs-reload โ€” graceful reload when the specified filesystem object gets modified. so chill.
  • --fs-brutal-reload โ€” brutal reload when the specified filesystem object gets modified. no chill, just violence.
  • --fs-signal โ€” raise a uwsgi signal when the specified filesystem object is modified. syntax: file signal.
  • --check-mountpoint โ€” destroy the instance if a filesystem is no more reachable. useful for reliable Fuse management.
  • --mountpoint-check โ€” same energy as --check-mountpoint: destroy the instance if a filesystem is no more reachable. useful for reliable Fuse management.
  • --check-mount โ€” also destroys the instance if a filesystem is no more reachable. useful for reliable Fuse management.
  • --mount-check โ€” another alias: destroy the instance if a filesystem is no more reachable. useful for reliable Fuse management.
  • --propagate-touch โ€” over-engineering option for systems with flaky signal management. iykyk.
  • --limit-post โ€” limit the request body. periodt.
  • --no-orphans โ€” automatically kill workers if master dies. lowkey dangerous for availability, so be careful bestie.
  • --prio โ€” set processes/threads priority.
  • --cpu-affinity โ€” set cpu affinity.
  • --post-buffering โ€” set size in bytes after which it will buffer to disk instead of memory.
  • --post-buffering-bufsize โ€” set buffer size for read() in post buffering mode.
  • --body-read-warning โ€” set the amount of allowed memory allocation (in megabytes) for request body before starting printing a warning.
  • --upload-progress โ€” enable creation of .json files in the specified directory during a file upload.
  • --no-default-app โ€” do not fallback to default app.
  • --manage-script-name โ€” automatically rewrite SCRIPT_NAME and PATH_INFO.
  • --ignore-script-name โ€” ignore SCRIPT_NAME.
  • --catch-exceptions โ€” report exception as http output. discouraged, use only for testing.
  • --reload-on-exception โ€” reload a worker when an exception is raised.
  • --reload-on-exception-type โ€” reload a worker when a specific exception type is raised.
  • --reload-on-exception-value โ€” reload a worker when a specific exception value is raised.
  • --reload-on-exception-repr โ€” reload a worker when a specific exception type+value (language-specific) is raised.
  • --exception-handler โ€” add an exception handler.
  • --enable-metrics โ€” enable metrics subsystem. let's get data.
  • --metric โ€” add a custom metric.
  • --metric-threshold โ€” add a metric threshold/alarm.
  • --metric-alarm โ€” add a metric threshold/alarm. same thing, different name.
  • --alarm-metric โ€” add a metric threshold/alarm. yup, another alias.
  • --metrics-dir โ€” export metrics as text files to the specified directory.
  • --metrics-dir-restore โ€” restore last value taken from the metrics dir.
  • --metric-dir โ€” export metrics as text files to the specified directory. yes, same as --metrics-dir.
  • --metric-dir-restore โ€” restore last value taken from the metrics dir.
  • --metrics-no-cores โ€” disable generation of cores-related metrics.
  • --udp โ€” run the udp server on the specified address.
  • --stats โ€” enable the stats server on the specified address.
  • --stats-server โ€” enable the stats server on the specified address. same vibes.
  • --stats-http โ€” prefix stats server json output with http headers.
  • --stats-minified โ€” minify statistics json output.
  • --stats-min โ€” minify statistics json output. alias alert.
  • --stats-push โ€” push the stats json to the specified destination.
  • --stats-pusher-default-freq โ€” set the default frequency of stats pushers.
  • --stats-pushers-default-freq โ€” set the default frequency of stats pushers. plural, same thing.
  • --stats-no-cores โ€” disable generation of cores-related stats.
  • --stats-no-metrics โ€” do not include metrics in stats output.
  • --multicast โ€” subscribe to specified multicast group.
  • --multicast-ttl โ€” set multicast ttl.
  • --multicast-loop โ€” set multicast loop (default 1).
  • --master-fifo โ€” enable the master fifo.
  • --notify-socket โ€” enable the notification socket.
  • --subscription-notify-socket โ€” set the notification socket for subscriptions.
  • --legion โ€” became a member of a legion.
  • --legion-mcast โ€” became a member of a legion (shortcut for multicast).
  • --legion-node โ€” add a node to a legion.
  • --legion-freq โ€” set the frequency of legion packets.
  • --legion-tolerance โ€” set the tolerance of legion subsystem.
  • --legion-death-on-lord-error โ€” declare itself as a dead node for the specified amount of seconds if one of the lord hooks fails.
  • --legion-skew-tolerance โ€” set the clock skew tolerance of legion subsystem (default 60 seconds).
  • --legion-lord โ€” action to call on Lord election.
  • --legion-unlord โ€” action to call on Lord dismiss.
  • --legion-setup โ€” action to call on legion setup.
  • --legion-death โ€” action to call on legion death (shutdown of the instance).
  • --legion-join โ€” action to call on legion join (first time quorum is reached).
  • --legion-node-joined โ€” action to call on new node joining legion.
  • --legion-node-left โ€” action to call node leaving legion.
  • --legion-quorum โ€” set the quorum of a legion.
  • --legion-scroll โ€” set the scroll of a legion.
  • --legion-scroll-max-size โ€” set max size of legion scroll buffer.
  • --legion-scroll-list-max-size โ€” set max size of legion scroll list buffer.
  • --subscriptions-sign-check โ€” set digest algorithm and certificate directory for secured subscription system.
  • --subscriptions-sign-check-tolerance โ€” set the maximum tolerance (in seconds) of clock skew for secured subscription system.
  • --subscriptions-sign-skip-uid โ€” skip signature check for the specified uid when using unix sockets credentials.
  • --subscriptions-credentials-check โ€” add a directory to search for subscriptions key credentials.
  • --subscriptions-use-credentials โ€” enable management of SCM_CREDENTIALS in subscriptions UNIX sockets.
  • --subscription-algo โ€” set load balancing algorithm for the subscription system.
  • --subscription-dotsplit โ€” try to fallback to the next part (dot based) in subscription key.
  • --subscribe-to โ€” subscribe to the specified subscription server.
  • --st โ€” subscribe to the specified subscription server. short and sweet.
  • --subscribe โ€” subscribe to the specified subscription server.
  • --subscribe2 โ€” subscribe to the specified subscription server using advanced keyval syntax.
  • --subscribe-freq โ€” send subscription announce at the specified interval.
  • --subscription-tolerance โ€” set tolerance for subscription servers.
  • --unsubscribe-on-graceful-reload โ€” force unsubscribe request even during graceful reload.
  • --start-unsubscribed โ€” configure subscriptions but do not send them (useful with master fifo).
  • --subscribe-with-modifier1 โ€” force the specified modifier1 when subscribing.
  • --snmp โ€” enable the embedded snmp server.
  • --snmp-community โ€” set the snmp community string.
  • --ssl-verbose โ€” be verbose about SSL errors.
  • --ssl-verify-depth โ€” set maximum certificate verification depth.
  • --sni โ€” add an SNI-governed SSL context.
  • --sni-dir โ€” check for cert/key/client_ca file in the specified directory and create a sni/ssl context on demand.
  • --sni-dir-ciphers โ€” set ssl ciphers for sni-dir option.
  • --ssl-enable3 โ€” enable SSLv3. insecure, bestie, do not.
  • --ssl-enable-sslv3 โ€” enable SSLv3. also insecure.
  • --ssl-enable-tlsv1 โ€” enable TLSv1. insecure, avoid.
  • --ssl-option โ€” set a raw ssl option (numeric value).
  • --sni-regexp โ€” add an SNI-governed SSL context (the key is a regexp).
  • --ssl-tmp-dir โ€” store ssl-related temp files in the specified directory.
  • --check-interval โ€” set the interval (in seconds) of master checks.
  • --forkbomb-delay โ€” sleep for the specified number of seconds when a forkbomb is detected.
  • --binary-path โ€” force binary path.
  • --privileged-binary-patch โ€” patch the uwsgi binary with a new command (before privileges drop).
  • --unprivileged-binary-patch โ€” patch the uwsgi binary with a new command (after privileges drop).
  • --privileged-binary-patch-arg โ€” patch the uwsgi binary with a new command and arguments (before privileges drop).
  • --unprivileged-binary-patch-arg โ€” patch the uwsgi binary with a new command and arguments (after privileges drop).
  • --async โ€” enable async mode with specified cores.
  • --max-fd โ€” set maximum number of file descriptors. requires root privileges.
  • --logto โ€” set logfile/udp address.
  • --logto2 โ€” log to specified file or udp address after privileges drop.
  • --log-format โ€” set advanced format for request logging.
  • --logformat โ€” set advanced format for request logging. alias.
  • --logformat-strftime โ€” apply strftime to logformat output.
  • --log-format-strftime โ€” apply strftime to logformat output.
  • --logfile-chown โ€” chown logfiles.
  • --logfile-chmod โ€” chmod logfiles.
  • --log-syslog โ€” log to syslog.
  • --log-socket โ€” send logs to the specified socket.
  • --req-logger โ€” set/append a request logger.
  • --logger-req โ€” set/append a request logger. same.
  • --logger โ€” set/append a logger.
  • --logger-list โ€” list enabled loggers.
  • --loggers-list โ€” list enabled loggers. plural, same.
  • --threaded-logger โ€” offload log writing to a thread.
  • --log-encoder โ€” add an item in the log encoder chain.
  • --log-req-encoder โ€” add an item in the log req encoder chain.
  • --log-drain โ€” drain (do not show) log lines matching the specified regexp.
  • --log-filter โ€” show only log lines matching the specified regexp.
  • --log-route โ€” log to the specified named logger if regexp applied on logline matches.
  • --log-req-route โ€” log requests to the specified named logger if regexp applied on logline matches.
  • --use-abort โ€” call abort() on segfault/fpe. could be useful for generating a core dump.
  • --alarm โ€” create a new alarm. syntax: <alarm> <plugin:args>.
  • --alarm-cheap โ€” use the main alarm thread instead of creating dedicated threads for curl-based alarms. no extra threads, we love to see it ๐Ÿ’…
  • --alarm-freq โ€” tune the anti-loop alarm system (default 3 seconds). keep it from going feral โฐ
  • --alarm-fd โ€” raise the specified alarm when an fd is read for read (by default it reads 1 byte, set 8 for eventfd). eventfd besties rise ๐Ÿซถ
  • --alarm-segfault โ€” raise the specified alarm when the segmentation fault handler is executed. segfault moment ๐Ÿ˜ญ
  • --segfault-alarm โ€” raise the specified alarm when the segmentation fault handler is executed. same energy, just a different alias โœจ
  • --alarm-backlog โ€” raise the specified alarm when the socket backlog queue is full. backlog? more like back-<em>log</em> amirite ๐Ÿ‘
  • --backlog-alarm โ€” raise the specified alarm when the socket backlog queue is full. identical twin fr fr ๐Ÿ’–
  • --lq-alarm โ€” raise the specified alarm when the socket backlog queue is full. lq = listen queue, and yes it's the same alarm again ๐Ÿ‘‘
  • --alarm-lq โ€” raise the specified alarm when the socket backlog queue is full. yet another alias, we stan consistency ๐Ÿ’…
  • --alarm-listen-queue โ€” raise the specified alarm when the socket backlog queue is full. spelling it out for the girlies who need it ๐ŸŒธ
  • --listen-queue-alarm โ€” raise the specified alarm when the socket backlog queue is full. last one of the backlog bunch, promise ๐ŸŽ€
  • --log-alarm โ€” raise the specified alarm when a log line matches the specified regexp, syntax: <alarm>[,alarm...] <regexp>. regex goes brrr ๐Ÿ”ฅ
  • --alarm-log โ€” raise the specified alarm when a log line matches the specified regexp, syntax: <alarm>[,alarm...] <regexp>. same thing, just flipped ๐Ÿฆ‹
  • --not-log-alarm โ€” skip the specified alarm when a log line matches the specified regexp, syntax: <alarm>[,alarm...] <regexp>. the "not" version, so you can be picky ๐Ÿ’œ
  • --not-alarm-log โ€” skip the specified alarm when a log line matches the specified regexp, syntax: <alarm>[,alarm...] <regexp>. yep, another alias, keep up bestie ๐Ÿ˜ญ
  • --alarm-list โ€” list enabled alarms. show me the receipts ๐Ÿ“œ
  • --alarms-list โ€” list enabled alarms. plural version, same tea โ˜•
  • --alarm-msg-size โ€” set the max size of an alarm message (default 8192). don't let your alarms be essay-length ๐Ÿ“
  • --log-master โ€” delegate logging to master process. let the master handle it, periodt ๐Ÿ‘‘
  • --log-master-bufsize โ€” set the buffer size for the master logger. bigger log messages will be truncated. truncation is real, watch out โœ‚๏ธ
  • --log-master-stream โ€” create the master logpipe as SOCK_STREAM. streamy stream ๐ŸŒŠ
  • --log-master-req-stream โ€” create the master requests logpipe as SOCK_STREAM. requests get the stream treatment too ๐Ÿ“จ
  • --log-reopen โ€” reopen log after reload. fresh start, reload edition ๐Ÿ”„
  • --log-truncate โ€” truncate log on startup. bye bye old logs ๐Ÿ‘‹
  • --log-maxsize โ€” set maximum logfile size. cap it before it gets out of hand ๐Ÿ“
  • --log-backupname โ€” set logfile name after rotation. name your backup, glow up โœจ
  • --logdate โ€” prefix logs with date or a strftime string. timestamps? iconic โณ
  • --log-date โ€” prefix logs with date or a strftime string. hyphenated twin, same vibe ๐Ÿ’…
  • --log-prefix โ€” prefix logs with a string. add your own flair to every line ๐ŸŽ€
  • --log-zero โ€” log responses without body. empty body? still log it ๐Ÿซถ
  • --log-slow โ€” log requests slower than the specified number of milliseconds. slow requests get called out ๐ŸŒ
  • --log-4xx โ€” log requests with a 4xx response. client errors, we see you ๐Ÿ‘€
  • --log-5xx โ€” log requests with a 5xx response. server errors, big yikes ๐Ÿ˜ฌ
  • --log-big โ€” log requests bigger than the specified size. thicc requests get logged ๐Ÿ‘
  • --log-sendfile โ€” log sendfile requests. sendfile? more like send-<em>logged</em> ๐Ÿ“ค
  • --log-ioerror โ€” log requests with io errors. io errors are not the vibe ๐Ÿ˜ญ
  • --log-micros โ€” report response time in microseconds instead of milliseconds. precision queen ๐Ÿ”ฌ
  • --log-x-forwarded-for โ€” use the ip from X-Forwarded-For header instead of REMOTE_ADDR. real ip energy, no proxy erasure ๐ŸŒˆ
  • --master-as-root โ€” leave master process running as root. danger? maybe. iconic? absolutely ๐Ÿ‘‘
  • --drop-after-init โ€” run privileges drop after plugin initialization, superseded by drop-after-apps. old school, but drop-after-apps ate ๐Ÿ’…
  • --drop-after-apps โ€” run privileges drop after apps loading, superseded by master-as-root. better, but master-as-root said "hold my crown" ๐Ÿ‘‘
  • --force-cwd โ€” force the initial working directory to the specified value. no wandering off, stay put ๐Ÿ“Œ
  • --binsh โ€” override /bin/sh (used by exec hooks, it always fallback to /bin/sh). custom shell, but fallback is always /bin/sh ๐Ÿš
  • --chdir โ€” chdir to specified directory before apps loading. move before you load ๐Ÿšš
  • --chdir2 โ€” chdir to specified directory after apps loading. move after you load, fancy ๐Ÿšš
  • --lazy โ€” set lazy mode (load apps in workers instead of master). lazy but make it efficient ๐Ÿ˜ด
  • --lazy-apps โ€” load apps in each worker instead of the master. every worker gets its own copy, independent girlies ๐Ÿ’…
  • --cheap โ€” set cheap mode (spawn workers only after the first request). no requests? no workers. frugal queen ๐Ÿ’ธ
  • --cheaper โ€” set cheaper mode (adaptive process spawning). adaptive, so it scales when needed ๐Ÿ“ˆ
  • --cheaper-initial โ€” set the initial number of processes to spawn in cheaper mode. start small, bestie ๐ŸŒฑ
  • --cheaper-algo โ€” choose to algorithm used for adaptive process spawning. pick your algorithm, main character energy ๐Ÿง 
  • --cheaper-step โ€” number of additional processes to spawn at each overload. step it up when things get busy ๐Ÿš€
  • --cheaper-overload โ€” increase workers after specified overload. overload? time to add more workers ๐Ÿ”ฅ
  • --cheaper-algo-list โ€” list enabled cheapers algorithms. show me the algorithms ๐Ÿ“‹
  • --cheaper-algos-list โ€” list enabled cheapers algorithms. plural, same list ๐Ÿ’…
  • --cheaper-list โ€” list enabled cheapers algorithms. short and sweet, still the list ๐ŸŽ€
  • --cheaper-rss-limit-soft โ€” don't spawn new workers if total resident memory usage of all workers is higher than this limit. soft limit, be gentle ๐Ÿ‘
  • --cheaper-rss-limit-hard โ€” if total workers resident memory usage is higher try to stop workers. hard limit, no mercy ๐Ÿ’€
  • --idle โ€” set idle mode (put uWSGI in cheap mode after inactivity). chill mode activated after you stop working ๐Ÿ˜Œ
  • --die-on-idle โ€” shutdown uWSGI when idle. if you're not busy, you're done. dramatic exit ๐Ÿšช
  • --mount โ€” load application under mountpoint. mount it like a pro ๐Ÿ”๏ธ
  • --worker-mount โ€” load application under mountpoint in the specified worker or after workers spawn. worker-specific mount, fancy ๐Ÿ’…
  • --threads โ€” run each worker in prethreaded mode with the specified number of threads. threads on threads on threads ๐Ÿงต
  • --thread-stacksize โ€” set threads stacksize. stack size matters, bestie ๐Ÿ“š
  • --threads-stacksize โ€” set threads stacksize. plural alias, same stack energy ๐Ÿฅž
  • --thread-stack-size โ€” set threads stacksize. hyphenated version, still the same ๐ŸŽ€
  • --threads-stack-size โ€” set threads stacksize. the final form of stacksize aliases ๐Ÿ‘‘
  • --vhost โ€” enable virtualhosting mode (based on SERVER_NAME variable). virtual hosts, based on SERVER_NAME ๐ŸŒ
  • --vhost-host โ€” enable virtualhosting mode (based on HTTP_HOST variable). same but HTTP_HOST, choose your fighter ๐ŸฅŠ
  • --route โ€” add a route. route it, queen ๐Ÿ›ฃ๏ธ
  • --route-host โ€” add a route based on Host header. host-based routing, we love to see it ๐Ÿ 
  • --route-uri โ€” add a route based on REQUEST_URI. uri routing, classic ๐Ÿ’…
  • --route-qs โ€” add a route based on QUERY_STRING. query string routing, get specific ๐Ÿ”
  • --route-remote-addr โ€” add a route based on REMOTE_ADDR. ip-based routing, know your audience ๐ŸŒ
  • --route-user-agent โ€” add a route based on HTTP_USER_AGENT. user agent routing, detect the vibes ๐Ÿ•ต๏ธ
  • --route-remote-user โ€” add a route based on REMOTE_USER. remote user routing, personal touch ๐Ÿ‘ค
  • --route-referer โ€” add a route based on HTTP_REFERER. referer routing, where did you come from? ๐Ÿ”—
  • --route-label โ€” add a routing label (for use with goto). label it for your goto jumps ๐Ÿท๏ธ
  • --route-if โ€” add a route based on condition. conditional routing, if this then that ๐Ÿง 
  • --route-if-not โ€” add a route based on condition (negate version). the "not" version, spicy ๐ŸŒถ๏ธ
  • --route-run โ€” always run the specified route action. no conditions, just do it โœ…
  • --final-route โ€” add a final route. the last word in routing ๐Ÿ
  • --final-route-status โ€” add a final route for the specified status. status-specific final route, bougie ๐Ÿ’…
  • --final-route-host โ€” add a final route based on Host header. final + host, double threat ๐Ÿ 
  • --final-route-uri โ€” add a final route based on REQUEST_URI. final + uri, precise ๐ŸŽฏ
  • --final-route-qs โ€” add a final route based on QUERY_STRING. final + query string, detailed ๐Ÿ”
  • --final-route-remote-addr โ€” add a final route based on REMOTE_ADDR. final + ip, knowing ๐ŸŒ
  • --final-route-user-agent โ€” add a final route based on HTTP_USER_AGENT. final + user agent, vibes ๐Ÿ•ต๏ธ
  • --final-route-remote-user โ€” add a final route based on REMOTE_USER. final + remote user, personal ๐Ÿ‘ค
  • --final-route-referer โ€” add a final route based on HTTP_REFERER. final + referer, nostalgic ๐Ÿ”—
  • --final-route-label โ€” add a final routing label (for use with goto). final label for your goto ๐Ÿท๏ธ
  • --final-route-if โ€” add a final route based on condition. final conditional, if this then done ๐Ÿง 
  • --final-route-if-not โ€” add a final route based on condition (negate version). final "not" condition, rebel ๐ŸŒถ๏ธ
  • --final-route-run โ€” always run the specified final route action. final run, no questions asked โœ…
  • --error-route โ€” add an error route. error routing, handle it gracefully ๐Ÿ˜ญ
  • --error-route-status โ€” add an error route for the specified status. status-specific error route, bougie ๐Ÿ’…
  • --error-route-host โ€” add an error route based on Host header. error + host, where did it go wrong? ๐Ÿ 
  • --error-route-uri โ€” add an error route based on REQUEST_URI. error + uri, pinpoint the oops ๐ŸŽฏ
  • --error-route-qs โ€” add an error route based on QUERY_STRING. error + query string, detective mode ๐Ÿ”
  • --error-route-remote-addr โ€” add an error route based on REMOTE_ADDR. error + ip, who did this? ๐ŸŒ
  • --error-route-user-agent โ€” add an error route based on HTTP_USER_AGENT. error + user agent, blame the browser ๐Ÿ•ต๏ธ
  • --error-route-remote-user โ€” add an error route based on REMOTE_USER. error + remote user, personal oops ๐Ÿ‘ค
  • --error-route-referer โ€” add an error route based on HTTP_REFERER. error + referer, how did you get here? ๐Ÿ”—
  • --error-route-label โ€” add an error routing label (for use with goto). error label for your goto ๐Ÿท๏ธ
  • --error-route-if โ€” add an error route based on condition. error conditional, if this then panic ๐Ÿง 
  • --error-route-if-not โ€” add an error route based on condition (negate version). error "not" condition, plot twist ๐ŸŒถ๏ธ
  • --error-route-run โ€” always run the specified error route action. error run, always ready โœ…
  • --response-route โ€” add a response route. response routing, after the fact ๐ŸŽฏ
  • --response-route-status โ€” add a response route for the specified status. status-specific response route, bougie ๐Ÿ’…
  • --response-route-host โ€” add a response route based on Host header. response + host, where it went ๐Ÿ 
  • --response-route-uri โ€” add a response route based on REQUEST_URI. response + uri, precise ๐ŸŽฏ
  • --response-route-qs โ€” add a response route based on QUERY_STRING. response + query string, detailed ๐Ÿ”
  • --response-route-remote-addr โ€” add a response route based on REMOTE_ADDR. response + ip, knowing ๐ŸŒ
  • --response-route-user-agent โ€” add a response route based on HTTP_USER_AGENT. response + user agent, vibes ๐Ÿ•ต๏ธ
  • --response-route-remote-user โ€” add a response route based on REMOTE_USER. response + remote user, personal ๐Ÿ‘ค
  • --response-route-referer โ€” add a response route based on HTTP_REFERER. response + referer, nostalgic ๐Ÿ”—
  • --response-route-label โ€” add a response routing label (for use with goto). response label for your goto ๐Ÿท๏ธ
  • --response-route-if โ€” add a response route based on condition. response conditional, if this then that ๐Ÿง 
  • --response-route-if-not โ€” add a response route based on condition (negate version). response "not" condition, spicy ๐ŸŒถ๏ธ
  • --response-route-run โ€” always run the specified response route action. response run, always โœ…
  • --router-list โ€” list enabled routers. show me the routers ๐Ÿ“‹
  • --routers-list โ€” list enabled routers. plural, same list ๐Ÿ’…
  • --error-page-403 โ€” add an error page (html) for managed 403 response. 403 page, custom and cute ๐Ÿšซ
  • --error-page-404 โ€” add an error page (html) for managed 404 response. 404 page, iconic ๐Ÿ•ณ๏ธ
  • --error-page-500 โ€” add an error page (html) for managed 500 response. 500 page, dramatic ๐Ÿ’ฅ
  • --websockets-ping-freq โ€” set the frequency (in seconds) of websockets automatic ping packets. ping ping ping ๐Ÿ“
  • --websocket-ping-freq โ€” set the frequency (in seconds) of websockets automatic ping packets. singular alias, same ping ๐Ÿ“
  • --websockets-pong-tolerance โ€” set the tolerance (in seconds) of websockets ping/pong subsystem. pong tolerance, be patient ๐Ÿ“
  • --websocket-pong-tolerance โ€” set the tolerance (in seconds) of websockets ping/pong subsystem. singular twin, same tolerance ๐Ÿ“
  • --websockets-max-size โ€” set the max allowed size of websocket messages (in Kbytes, default 1024). size limit, keep it tight ๐Ÿ“
  • --websocket-max-size โ€” set the max allowed size of websocket messages (in Kbytes, default 1024). singular alias, same max ๐Ÿ“
  • --chunked-input-limit โ€” set the max size of a chunked input part (default 1MB, in bytes). chunked input limit, byte by byte ๐Ÿงฉ
  • --chunked-input-timeout โ€” set default timeout for chunked input. timeout for chunked input, don't wait forever โฐ
  • --clock โ€” set a clock source. tick tock, pick your clock โฐ
  • --clock-list โ€” list enabled clocks. show me the clocks ๐Ÿ“‹
  • --clocks-list โ€” lists all the clocks you've got enabled โœจ
  • --add-header โ€” auto-slaps HTTP headers onto the response for you ๐ŸŽ€
  • --rem-header โ€” auto-removes the HTTP header you name from the response ๐Ÿงน
  • --del-header โ€” same vibe, auto-removes the specified HTTP header from the response
  • --collect-header โ€” stashes the response header you name into a request var (syntax: header var) ๐Ÿ’Œ
  • --response-header-collect โ€” also stashes the specified response header into a request var (syntax: header var)
  • --pull-header โ€” stashes the specified response header into a request var and rips it out of the response (syntax: header var) ๐Ÿซณ
  • --check-static โ€” checks for static files in the directory you point it at
  • --check-static-docroot โ€” checks for static files in the requested DOCUMENT_ROOT
  • --static-check โ€” checks for static files in the specified directory (same energy, different name) ๐Ÿ’ซ
  • --static-map โ€” maps a mountpoint to a static directory (or a file)
  • --static-map2 โ€” like --static-map but it completely appends the requested resource to the docroot
  • --static-skip-ext โ€” skips the extension you name when doing static file checks
  • --static-index โ€” searches for the file you specify when a directory is requested ๐Ÿ—‚๏ธ
  • --static-safe โ€” skips security checks if the file lives under the path you specify
  • --static-cache-paths โ€” drops resolved paths into the uWSGI cache for however many seconds you say โฑ๏ธ
  • --static-cache-paths-name โ€” uses the cache you name for static paths
  • --mimefile โ€” sets the mime types file path (default /etc/mime.types) ๐Ÿ“„
  • --mime-file โ€” sets the mime types file path (default /etc/mime.types), twin edition
  • --static-expires-type โ€” sets the Expires header based on content type
  • --static-expires-type-mtime โ€” sets the Expires header based on content type and file mtime
  • --static-expires โ€” sets the Expires header based on a filename regexp
  • --static-expires-mtime โ€” sets the Expires header based on a filename regexp and file mtime
  • --static-expires-uri โ€” sets the Expires header based on a REQUEST_URI regexp
  • --static-expires-uri-mtime โ€” sets the Expires header based on a REQUEST_URI regexp and file mtime
  • --static-expires-path-info โ€” sets the Expires header based on a PATH_INFO regexp
  • --static-expires-path-info-mtime โ€” sets the Expires header based on a PATH_INFO regexp and file mtime
  • --static-gzip โ€” if your regexp matches the static file translation, it goes looking for a gzip version ๐Ÿ—œ๏ธ
  • --static-gzip-all โ€” checks for a gzip version of every single requested static file
  • --static-gzip-dir โ€” checks for a gzip version of all requested static files in the dir/prefix you specify
  • --static-gzip-prefix โ€” checks for a gzip version of all requested static files in the dir/prefix you specify
  • --static-gzip-ext โ€” checks for a gzip version of all requested static files with the ext/suffix you specify
  • --static-gzip-suffix โ€” checks for a gzip version of all requested static files with the ext/suffix you specify
  • --honour-range โ€” turns on support for the HTTP Range header ๐Ÿ“
  • --offload-threads โ€” sets how many offload threads to spawn (per-worker, default 0)
  • --offload-thread โ€” sets how many offload threads to spawn (per-worker, default 0), singular bestie
  • --file-serve-mode โ€” sets the static file serving mode
  • --fileserve-mode โ€” sets the static file serving mode (yep, same thing)
  • --disable-sendfile โ€” disables sendfile() and relies on boring read()/write() instead ๐Ÿ™ˆ
  • --check-cache โ€” checks for response data in the cache you specify (leave it empty for the default cache)
  • --close-on-exec โ€” sets close-on-exec on connection sockets (could be required for spawning processes in requests)
  • --close-on-exec2 โ€” sets close-on-exec on server sockets (could be required for spawning processes in requests)
  • --mode โ€” set uWSGI custom mode
  • --env โ€” set environment variable ๐ŸŒฑ
  • --envdir โ€” loads a daemontools compatible envdir
  • --early-envdir โ€” loads a daemontools compatible envdir ASAP โšก
  • --unenv โ€” unsets an environment variable
  • --vacuum โ€” tries to remove all of the generated file/sockets ๐Ÿงฝ
  • --file-write โ€” writes the content you specify to the file you specify (syntax: file=value) before privileges drop
  • --cgroup โ€” puts the processes in the cgroup you specify
  • --cgroup-opt โ€” sets a value in the cgroup option you specify
  • --cgroup-dir-mode โ€” sets permission for the cgroup directory (default is 700) ๐Ÿ”
  • --namespace โ€” runs in a new namespace under the rootfs you specify
  • --namespace-keep-mount โ€” keeps the mountpoint you specify in your namespace
  • --ns โ€” runs in a new namespace under the specified rootfs (short king edition)
  • --namespace-net โ€” adds a network namespace ๐ŸŒ
  • --ns-net โ€” adds a network namespace
  • --enable-proxy-protocol โ€” enables PROXY1 protocol support (only for http parsers) ๐Ÿ›ฐ๏ธ
  • --reuse-port โ€” enables the REUSE_PORT flag on the socket (BSD only)
  • --tcp-fast-open โ€” enables the TCP_FASTOPEN flag on TCP sockets with the qlen value you give it ๐Ÿš€
  • --tcp-fastopen โ€” enables the TCP_FASTOPEN flag on TCP sockets with the specified qlen value
  • --tcp-fast-open-client โ€” uses sendto(..., MSG_FASTOPEN, ...) instead of connect() if supported
  • --tcp-fastopen-client โ€” uses sendto(..., MSG_FASTOPEN, ...) instead of connect() if supported
  • --zerg โ€” attaches to a zerg server ๐Ÿ‘พ
  • --zerg-fallback โ€” falls back to normal sockets if the zerg server isn't available
  • --zerg-server โ€” enables the zerg server on the UNIX socket you specify
  • --cron โ€” adds a cron task โฐ
  • --cron2 โ€” adds a cron task (key=val syntax)
  • --unique-cron โ€” adds a unique cron task
  • --cron-harakiri โ€” sets the max time (in seconds) we wait for a cron command to finish ๐Ÿ—ก๏ธ
  • --legion-cron โ€” adds a cron task that only runs when the instance is a lord of the legion you specify ๐Ÿ‘‘
  • --cron-legion โ€” adds a cron task that only runs when the instance is a lord of the specified legion
  • --unique-legion-cron โ€” adds a unique cron task that only runs when the instance is a lord of the specified legion
  • --unique-cron-legion โ€” adds a unique cron task that only runs when the instance is a lord of the specified legion
  • --loop โ€” selects the uWSGI loop engine ๐Ÿ”
  • --loop-list โ€” lists all the enabled loop engines
  • --loops-list โ€” lists the enabled loop engines (plural moment)
  • --worker-exec โ€” runs the command you specify as a worker
  • --worker-exec2 โ€” runs the command you specify as a worker (after the post_fork hook) ๐Ÿช
  • --attach-daemon โ€” attaches a command/daemon to the master process (the command has to not go in background)
  • --attach-control-daemon โ€” attaches a command/daemon to the master process (the command has to not go in background), and when the daemon dies, the master dies too ๐Ÿ’€
  • --smart-attach-daemon โ€” attaches a command/daemon to the master process managed by a pidfile (the command has to daemonize)
  • --smart-attach-daemon2 โ€” attaches a command/daemon to the master process managed by a pidfile (the command has to NOT daemonize) ๐Ÿ™ƒ
  • --legion-attach-daemon โ€” same as --attach-daemon but the daemon only runs on a legion lord node ๐Ÿ‘‘
  • --legion-smart-attach-daemon โ€” same as --smart-attach-daemon but the daemon only runs on a legion lord node
  • --legion-smart-attach-daemon2 โ€” same as --smart-attach-daemon2 but the daemon only runs on a legion lord node
  • --daemons-honour-stdin โ€” does not change the stdin of external daemons to /dev/null ๐Ÿซถ
  • --attach-daemon2 โ€” the attach-daemon keyval variant (supports smart modes too)
  • --plugins โ€” loads uWSGI plugins ๐Ÿงฉ
  • --plugin โ€” loads uWSGI plugins
  • --need-plugins โ€” loads uWSGI plugins (exits on error)
  • --need-plugin โ€” loads uWSGI plugins (exit on error, singular bestie)
  • --plugins-dir โ€” adds a directory to the uWSGI plugin search path ๐Ÿ”
  • --plugin-dir โ€” adds a directory to the uWSGI plugin search path
  • --plugins-list โ€” lists all the enabled plugins ๐Ÿ“‹
  • --plugin-list โ€” lists the enabled plugins
  • --autoload โ€” tries to automatically load plugins when unknown options are found โœจ
  • --dlopen โ€” blindly loads a shared library ๐Ÿ™ˆ
  • --allowed-modifiers โ€” comma separated list of allowed modifiers
  • --remap-modifier โ€” remaps a request modifier from one id to another ๐Ÿ”€
  • --dump-options โ€” dumps the full list of available options ๐Ÿ“œ
  • --show-config โ€” shows the current config reformatted as ini ๐ŸŽ€
  • --binary-append-data โ€” returns the content of a resource to stdout for appending to a uwsgi binary (for data:// usage)
  • --print โ€” simple print ๐Ÿ–จ๏ธ
  • --iprint โ€” simple print (immediate version) โšก
  • --exit โ€” force exit() of the instance ๐Ÿšช
  • --cflags โ€” reports uWSGI CFLAGS (useful for building external plugins) ๐Ÿ› ๏ธ
  • --dot-h โ€” dumps the uwsgi.h used for building the core (useful for building external plugins)
  • --config-py โ€” dumps the uwsgiconfig.py used for building the core (useful for building external plugins)
  • --build-plugin โ€” builds a uWSGI plugin for the current binary ๐Ÿ”จ
  • --version โ€” prints the uWSGI version ๐Ÿท๏ธ
  • --response-headers-limit โ€” sets the response header maximum size (default: 64k) ๐Ÿ“

and that's the whole option list bestie, you made it to the end ๐ŸŽ‰ This one's from uwsgi_rados version 2.0.31-2, dated February 2026, and the page is UWSGI_RADOS(1) โ€” go forth and configure, icon, you've got this ๐Ÿ’–โœจ๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from