Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-17035

Add trace id to jetty thread names to improve debuggability via stack traces

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 9.5
    • None
    • None

    Description

      Proposing to attach the trace id (if exists) data to the jetty thread names (the 'qtp*-*' pool) for more help when debugging a Solr issue. this is a pattern that already exists in Solr (putting the entire MDC context in the name), this jira is to add a single id to the name.

      Current format:

      qtp1175371136-23 (23)
      	org.apache.lucene.codecs.lucene90.blocktree.SegmentTermsEnum.getFrame​(SegmentTermsEnum.java:213)
      	org.apache.lucene.codecs.lucene90.blocktree.SegmentTermsEnum.pushFrame​(SegmentTermsEnum.java:241)
      	org.apache.lucene.codecs.lucene90.blocktree.SegmentTermsEnum.seekExact​(SegmentTermsEnum.java:494)
      	org.apache.lucene.index.TermStates.loadTermsEnum​(TermStates.java:111)
      	org.apache.lucene.index.TermStates.build​(TermStates.java:96)
      

      Proposed:

      qtp2090991873-68-localhost-2786 (68)
      	org.apache.lucene.analysis.CharArrayMap.containsKey​(CharArrayMap.java:99)
      	org.apache.lucene.analysis.CharArraySet.contains​(CharArraySet.java:89)
      	org.apache.lucene.analysis.StopFilter.accept​(StopFilter.java:97)
      	org.apache.lucene.analysis.FilteringTokenFilter.incrementToken​(FilteringTokenFilter.java:52)
      	org.apache.lucene.analysis.LowerCaseFilter.incrementToken​(LowerCaseFilter.java:37)
      	org.apache.lucene.index.IndexingChain$PerField.invertTokenStream​(IndexingChain.java:1168)
      	org.apache.lucene.index.IndexingChain$PerField.invert​(IndexingChain.java:1146)
      	org.apache.lucene.index.IndexingChain.processField​(IndexingChain.java:697)
      	org.apache.lucene.index.IndexingChain.processDocument​(IndexingChain.java:576)
      	org.apache.lucene.index.DocumentsWriterPerThread.updateDocuments​(DocumentsWriterPerThread.java:242)
      	org.apache.lucene.index.DocumentsWriter.updateDocuments​(DocumentsWriter.java:432)
      	org.apache.lucene.index.IndexWriter.updateDocuments​(IndexWriter.java:1545)
      	org.apache.lucene.index.IndexWriter.updateDocuments​(IndexWriter.java:1521)
      	org.apache.solr.update.DirectUpdateHandler2.updateDocOrDocValues​(DirectUpdateHandler2.java:1063)
      

      here `localhost-2786` is the trace id that can be searched in the logs for better correlation between these 2 sources of data (stacktrace, logging).

      Attachments

        Issue Links

          Activity

            People

              stillalex Alex Deparvu
              stillalex Alex Deparvu
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 0.5h
                  0.5h