A StreamBase client uses XML RPC to send status requests and commands to the target sbd server URI. In the case of this error, whatever was sent missed the expected format.
This could be because:
- The client is not using the correct version of the StreamBase Client API.
- There was an attempt to connect the to the StreamBase server by something other than a valid SB Client application.
To demonstrate this error use telnet or any other TCP application that takes an arbitrary port.
For example (using StreamBase 7):
$ sbd
[notice] sbd at system:10050; pid=25157; version=6.2.3.0; Listening
$ telnet localhost 10050
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
type anything
^]
telnet> quit
Connection closed.
sbd output reports:
[error] HTTPProtocolError: HTTP header was not found.
Using TIBCO Streaming version 10 or later use command:
$ curl http://localhost:10000/index.html
In the server console log it reports:
WARN com.streambase.sb.sbd.net.HTTPServer: Connection /0:0:0:0:0:0:0:1:62717: Unable to determine client protocol version
TroubleshootingTo troubleshoot this further in StreamBase 7.x, set
STREAMBASE_LOG_LEVEL=3 (TRACE level) in the server's environment and capture STDOUT and STDERR from the server to see what server events occur just before this error.
Example:
set STREAMBASE_LOG_LEVEL=3
sbd -f sbd.sbconf app.sbapp >sbd.log 2>&1
To troubleshoot this in TIBCO Streaming 10.x, start the node normally, and set TRACE logging for a running server using command:
epadmin servicename=A.X set logging enginename={the engine name} loggername=com.streambase.sb.sbd.net.HTTPServer level=TRACEThe console output will include before the error a report of the characters which were included in the connection, and this can be used to identify where the request came from.
For example, this is the output from the above example using 'curl' which shows what was received just before the warning:
2020-01-30 13:32:36.097000-0500 [46292:runtime [tid=73656]] INFO com.streambase.sb.sbd.net.HTTPServer: changing logger "com.streambase.sb.sbd.net.HTTPServer" level from INFO to TRACE
2020-01-30 13:32:39.544000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: Connection acceptor loop keys selected: 1
2020-01-30 13:32:39.544000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: Call: X-SB
2020-01-30 13:32:39.544000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: true
2020-01-30 13:32:39.544000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: false
2020-01-30 13:32:44.544000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: Connection acceptor loop keys selected: 1
2020-01-30 13:32:44.545000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: Call: X-SB
2020-01-30 13:32:44.545000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: true
2020-01-30 13:32:44.545000-0500 [46292:Thread- ThreadPool - 3] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: false
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: Call: HTTPHeader
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: Didnt find end of header: buf: write:
cap: 768 limit: 768: remaining: 768 position: 0 byteOrder: LITTLE_ENDIAN, read: cap: 768 limit: 0: remaining: 0 position: 0 byteOrder: LITTLE_ENDIAN
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: true
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 0: b: 71: char G header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 1: b: 69: char E header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 2: b: 84: char T header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 3: b: 32: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 4: b: 47: char / header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 5: b: 105: char i header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 6: b: 110: char n header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 7: b: 100: char d header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 8: b: 101: char e header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 9: b: 120: char x header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 10: b: 46: char . header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 11: b: 104: char h header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 12: b: 116: char t header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 13: b: 109: char m header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 14: b: 108: char l header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 15: b: 32: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 16: b: 72: char H header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 17: b: 84: char T header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 18: b: 84: char T header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 19: b: 80: char P header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 20: b: 47: char / header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 21: b: 49: char 1 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 22: b: 46: char . header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 23: b: 49: char 1 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 24: b: 13: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 25: b: 10: charheader: 10 headerpos: 1
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 26: b: 72: char H header: 13 headerpos: 2
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 27: b: 111: char o header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 28: b: 115: char s header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 29: b: 116: char t header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 30: b: 58: char : header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 31: b: 32: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 32: b: 108: char l header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 33: b: 111: char o header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 34: b: 99: char c header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 35: b: 97: char a header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 36: b: 108: char l header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 37: b: 104: char h header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 38: b: 111: char o header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 39: b: 115: char s header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 40: b: 116: char t header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 41: b: 58: char : header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 42: b: 49: char 1 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 43: b: 48: char 0 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 44: b: 48: char 0 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 45: b: 48: char 0 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 46: b: 48: char 0 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 47: b: 13: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 48: b: 10: charheader: 10 headerpos: 1
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 49: b: 85: char U header: 13 headerpos: 2
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 50: b: 115: char s header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 51: b: 101: char e header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 52: b: 114: char r header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 53: b: 45: char - header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 54: b: 65: char A header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 55: b: 103: char g header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 56: b: 101: char e header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 57: b: 110: char n header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 58: b: 116: char t header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 59: b: 58: char : header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 60: b: 32: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 61: b: 99: char c header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 62: b: 117: char u header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 63: b: 114: char r header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 64: b: 108: char l header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 65: b: 47: char / header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 66: b: 55: char 7 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 67: b: 46: char . header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 68: b: 53: char 5 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 69: b: 53: char 5 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 70: b: 46: char . header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 71: b: 49: char 1 header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 72: b: 13: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 73: b: 10: charheader: 10 headerpos: 1
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 74: b: 65: char A header: 13 headerpos: 2
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 75: b: 99: char c header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 76: b: 99: char c header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 77: b: 101: char e header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 78: b: 112: char p header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 79: b: 116: char t header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 80: b: 58: char : header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 81: b: 32: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 82: b: 42: char * header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 83: b: 47: char / header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 84: b: 42: char * header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 85: b: 13: char header: 13 headerpos: 0
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 86: b: 10: charheader: 10 headerpos: 1
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 87: b: 13: char header: 13 headerpos: 2
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: 88: b: 10: charheader: 10 headerpos: 3
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: found end of header at: 89: buf: write:
cap: 768 limit: 768: remaining: 679 position: 89 byteOrder: LITTLE_ENDIAN, read: cap: 768 limit: 89: remaining: 89 position: 0 byteOrder: LITTLE_ENDIAN
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] TRACE com.streambase.sb.sbd.net.HTTPServer: loop: needMoreData: false
2020-01-30 13:32:46.518000-0500 [46292:Thread- ThreadPool - 16] WARN com.streambase.sb.sbd.net.HTTPServer: Connection /0:0:0:0:0:0:0:1:64089: Unable to determine client protocol version