Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-38313

External Build Log storage for Jenkins

    XMLWordPrintable

    Details

    • Epic Name:
      External Build Log storage for Jenkins
    • Similar Issues:

      Description

      Jenkins' logging system is one of potential scalability bottlenecks on big Jenkins instances. System logging can be redirected via JUL log appenders (or other such solutions), but there is no OOTB solution for build logs.

      It would be great to have such solution. Top-level requirements:

      • All or almost all build/task logging is moved from Jenkins filesystem to External Build Log Storage
      • Minimize log traffic between Jenkins agents and the master, logs should be reported from slaves directly when it is possible
      • External Build Log Storage has an extensible and pluggable architecture
      • At least 2 reference implementations:
        • File-system-based storage (current implementation)
        • One external build log storage based on the open-source stack. Preference - Elasticsearch-Logstash-Kibana
      • Jenkins Pipeline is supported out of the box
      • Old logs should be browseable after changing the storage engine (Migration or parallel engines)

      Design document:

        Attachments

          Issue Links

            Activity

            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            This EPIC is in progress again

            Show
            oleg_nenashev Oleg Nenashev added a comment - This EPIC is in progress again
            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            And... it was aborted again for some reasons out of my control...

            Show
            oleg_nenashev Oleg Nenashev added a comment - And... it was aborted again for some reasons out of my control...
            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            I have abandoned all tasks in this EPIC. As stated in https://groups.google.com/d/msg/jenkinsci-dev/uc6NsMoCFQI/AIO4WG1UCwAJ , Carlos Sanchez and Jesse Glick can take over any tasks, PRs and JEPs related to this EPIC

            Show
            oleg_nenashev Oleg Nenashev added a comment - I have abandoned all tasks in this EPIC. As stated in https://groups.google.com/d/msg/jenkinsci-dev/uc6NsMoCFQI/AIO4WG1UCwAJ , Carlos Sanchez and Jesse Glick can take over any tasks, PRs and JEPs related to this EPIC
            Hide
            datadog Datadog HQ added a comment -

            Hi Carlos Sanchez and Jesse Glick, we are wondering about the current status of this EPIC? We are interested in using this logging capability, and we would like to know if this is continued to be supported even in beta?

            Show
            datadog Datadog HQ added a comment - Hi  Carlos Sanchez  and Jesse Glick , we are wondering about the current status of this EPIC? We are interested in using this logging capability, and we would like to know if this is continued to be supported even in beta?
            Hide
            jglick Jesse Glick added a comment -

            Datadog HQ nothing is “supported” exactly, but https://plugins.jenkins.io/pipeline-cloudwatch-logs/ continues to work (AFAIK), and JEP-210 is open to other implementations (beta-level API). At a very high level, the main limitations are

            • There is no support for non-Pipeline projects.
            • Pending JENKINS-52165, an implementation needs to turn on a log streaming implementation for sh-like steps which does not otherwise get much testing.
            • Pending API changes to Jenkins core (incl. Stapler) and matching changes in Blue Ocean, in-Jenkins log display for running builds is inefficient. (Uses a byte offset cursor rather than an implementation-defined cursor that could be implemented efficiently.)
            Show
            jglick Jesse Glick added a comment - Datadog HQ nothing is “supported” exactly, but https://plugins.jenkins.io/pipeline-cloudwatch-logs/ continues to work (AFAIK), and JEP-210 is open to other implementations (beta-level API). At a very high level, the main limitations are There is no support for non-Pipeline projects. Pending JENKINS-52165 , an implementation needs to turn on a log streaming implementation for sh -like steps which does not otherwise get much testing. Pending API changes to Jenkins core (incl. Stapler) and matching changes in Blue Ocean, in-Jenkins log display for running builds is inefficient. (Uses a byte offset cursor rather than an implementation-defined cursor that could be implemented efficiently.)

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              oleg_nenashev Oleg Nenashev
              Votes:
              15 Vote for this issue
              Watchers:
              42 Start watching this issue

                Dates

                Created:
                Updated: