Uploaded image for project: 'Trapperkeeper'
  1. Trapperkeeper
  2. TK-144

Allow script-based configuration of Jetty for advanced use cases

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: TK-JETTY9 1.2.0
    • Component/s: None
    • Labels:
      None
    • CS Priority:
      Critical

      Description

      A problem that we have had a few times with Jetty is that, in order to try to make it easy for our users to manage the application without having to be Jetty experts, we run Jetty embedded and only surface a subset of its configuration options that we believe the users might care about.

      This provides a pretty nice UX in cases where we've plumbed the appropriate settings through into our config before shipping a build, but, it can be problematic when we are trying to debug a customer issue and we discover a potentially-relevant Jetty setting that we haven't wired through to our configuration files... it means that we can't toggle the Jetty config setting without shipping them a new build.

      After discovering how logback supports some basic Java scripting in their EvaluatorFilters (via a library called Janino), it occurred to me that we might be able to support something similar for our Jetty configuration.

      This would allow us to expose a setting (for advanced use cases only) where a user could provide some code to manipulate a Jetty `Server` object programatically. This should theoretically allow us to cobble together some sample configuration to ship to users who already have a build installed that can modify basically any setting that is available in Jetty.

      Use cases for this setting would hopefully be temporary, and when we find new Jetty settings that we determine would be valuable to users, we can just plumb them through to our normal configuration for the next release, but this would give users a workaround that doesn't require us to ship them a whole new build in the interim.

        Attachments

          Issue Links

            Activity

              jsd-sla-details-panel

                People

                • Assignee:
                  chris Chris Price
                  Reporter:
                  chris Chris Price
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Zendesk Support