The reason that state like this is not readily accessible to a twistd plugin is intentional, although we have long been paying the cost of making it difficult to configure without really realizing the benefit from this architecture, which is service composability. For example, something like, "twistd -n web --path http + words --irc-port=6667 + mail --maildirdbmdomain=
example.com=/tmp/
example.com + auth
ldap://corporate-active-directory" to give you IRC and web and mail all backed by the same authentication database. If this is the case then no one plugin can really assert control over how logging is configured, so we have been trying to avoid doing a whole lot in the area of making it possible for your plugin to control the twistd environment it's started in.
If you really want to control every aspect of your deployment from your own code, you can always just import `twisted.scripts.twistd´ and build your own ServerOptions object that contains exactly what deployment options you want to use.
I hope this is helpful. Thanks for using Twisted!