calmh / node-snmp-native

Native Javascript SNMP library for Node.js
MIT License
252 stars 66 forks source link

AssertionError 48=83? #51

Closed cchance27 closed 6 years ago

cchance27 commented 7 years ago

Have a long running app that polls over time and graphs but i'm getting a random crash not sure whats causing it

AssertionError: 48 == 83 at parse (C:\Users\C\Desktop\NODE Projects\Dash\node_modules\snmp-native\lib\snmp.js:223:12) at EventEmitter.msgReceived (C:\Users\C\Desktop\NODE Projects\Dash\node_modules\snmp-native\lib\snmp.js:404:15) at emitTwo (events.js:106:13) at Socket.emit (events.js:191:7) at UDP.onMessage (dgram.js:540:8)

Message data: 53 46 4a 00 1c 00 00 00 00 00 00 00 00 00 00 00 41 09 f8 50 00 01 01 00 00 00 d9 76

events.js:160 throw er; // Unhandled 'error' event ^ AssertionError: 48 == 83 at parse (C:\Users\C\Desktop\NODE Projects\Dash\node_modules\snmp-native\lib\snmp.js:223:12) at EventEmitter.msgReceived (C:\Users\C\Desktop\NODE Projects\Dash\node_modules\snmp-native\lib\snmp.js:404:15) at emitTwo (events.js:106:13) at Socket.emit (events.js:191:7) at UDP.onMessage (dgram.js:540:8)

StrikeForceZero commented 7 years ago

I too also have a long running app and getting AssertionError: 48 == 83

AssertionError: 48 == 83
    at parse (C:\path\to\project\node_modules\snmp-native\lib\snmp.js:223:12)
    at EventEmitter.msgReceived (C:\path\to\project\node_modules\snmp-native\lib\snmp.js:405:15)
    at emitTwo (events.js:106:13)
    at Socket.emit (events.js:191:7)
    at UDP.onMessage (dgram.js:547:8)

Message data:
    53 70 6f 74 55 64 70 30 51 90 8c 03 81 8b 51 a0 
    00 01 00 04 48 95 c2 03 e8 fd a0 b6 7e ba 9d da 
    d3 f9 b3 a1 05 49 cd c4 d7 dc 37 0e 
undefined
C:\path\to\project\node_modules\snmp-native\lib\snmp.js:223
    assert.equal(asn1ber.types.Sequence, hdr.type);
           ^
AssertionError: 48 == 83
    at parse (C:\path\to\project\node_modules\snmp-native\lib\snmp.js:223:12)
    at EventEmitter.msgReceived (C:\path\to\project\node_modules\snmp-native\lib\snmp.js:405:15)
    at emitTwo (events.js:106:13)
    at Socket.emit (events.js:191:7)
    at UDP.onMessage (dgram.js:547:8)
StrikeForceZero commented 7 years ago

possibly related to https://github.com/calmh/node-snmp-native/issues/8

calmh commented 7 years ago

Ah, right. Yes, looks like same issue. Never came to the bottom of what generated that packet, in that other issue, but the short of it is that it means we received data that was not SNMP. You can hook into the error event etc to avoid crashing, but it would be neat to know what that response you're getting is and where it comes from.

StrikeForceZero commented 7 years ago

i just noticed this from the other thread: session.on("error", (err) => { }); I'll add that in as I actually have quite a few different assertion errors I've noticed. What has me curious is it does not appear to encounter any assertion errors in a *nix environment.

I'll see if I can get some more data, what types of devices, oids... etc. so hopefully we can make more sense of what happened.

cchance27 commented 7 years ago

This may be an issue of hung sockets as before I moved to snmp factory I noticed that node.exe had thousands of sockets open after a few hours in netstat closing my app cleared them so perhaps windows is running out of sockets because node isn't closing the socket off for some reason

Chris

Sent from my iPhone

On Jan 18, 2017, at 5:26 PM, Brett Striker notifications@github.com wrote:

i just noticed this from the other thread: session.on("error", (err) => { }); I'll add that in as I actually have quite a few different assertion errors I've noticed. What has me curious is it does not appear to encounter any assertion errors in a *nix environment.

I'll see if I can get some more data, what types of devices, oids... etc. so hopefully we can make more sense of what happened.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

sergeturgeon commented 7 years ago

i have seen the similar issue Jan 23 17:27:19 raspberrypi homebridge[5829]: Woops! An error occurred while parsing an SNMP message. :( Jan 23 17:27:19 raspberrypi homebridge[5829]: To have this problem corrected, please report the information below verbatim Jan 23 17:27:19 raspberrypi homebridge[5829]: via email to snmp@nym.se or by creating a GitHub issue at Jan 23 17:27:19 raspberrypi homebridge[5829]: https://github.com/calmh/node-snmp-native/issues Jan 23 17:27:19 raspberrypi homebridge[5829]: Thanks! Jan 23 17:27:19 raspberrypi homebridge[5829]: AssertionError: 48 == 1 Jan 23 17:27:19 raspberrypi homebridge[5829]: at parse (/usr/local/lib/node_modules/homebridge-bandwidth-meter/node_modules/snmp-native/lib/snmp.js:223:12) Jan 23 17:27:19 raspberrypi homebridge[5829]: at Session.msgReceived (/usr/local/lib/node_modules/homebridge-bandwidth-meter/node_modules/snmp-native/lib/snmp.js:405:15) Jan 23 17:27:19 raspberrypi homebridge[5829]: at emitTwo (events.js:106:13) Jan 23 17:27:19 raspberrypi homebridge[5829]: at Socket.emit (events.js:191:7) Jan 23 17:27:19 raspberrypi homebridge[5829]: at UDP.onMessage [as onmessage] (dgram.js:547:8) Jan 23 17:27:19 raspberrypi homebridge[5829]: Message data: Jan 23 17:27:19 raspberrypi homebridge[5829]: 01 00 00 7f 02 00 0a 44 d9 e7 41 8e 2c c0 a8 01 Jan 23 17:27:19 raspberrypi homebridge[5829]: 01 02 00 0a 44 d9 e7 41 8e 2d 63 f5 fd 7b 02 00 Jan 23 17:27:19 raspberrypi homebridge[5829]: 0a 44 d9 e7 41 8e 2e c0 a8 02 01 01 00 06 44 d9 Jan 23 17:27:19 raspberrypi homebridge[5829]: e7 41 8e 2c 0a 00 04 00 0e 98 d6 0b 00 0a 65 64 Jan 23 17:27:19 raspberrypi homebridge[5829]: 67 65 72 6f 75 74 65 72 0c 00 08 45 52 4c 69 74 Jan 23 17:27:19 raspberrypi homebridge[5829]: 65 2d 33 03 00 2d 45 64 67 65 52 6f 75 74 65 72 Jan 23 17:27:19 raspberrypi homebridge[5829]: 2e 45 52 2d 65 31 30 30 2e 76 31 2e 39 2e 31 2e Jan 23 17:27:19 raspberrypi homebridge[5829]: 34 39 33 39 30 39 33 2e 31 36 31 32 31 34 2e 30 Jan 23 17:27:19 raspberrypi homebridge[5829]: 37 30 35 Jan 23 17:27:19 raspberrypi homebridge[5829]: events.js:160 Jan 23 17:27:19 raspberrypi homebridge[5829]: throw er; // Unhandled 'error' event Jan 23 17:27:19 raspberrypi homebridge[5829]: ^ Jan 23 17:27:19 raspberrypi homebridge[5829]: AssertionError: 48 == 1 Jan 23 17:27:19 raspberrypi homebridge[5829]: at parse (/usr/local/lib/node_modules/homebridge-bandwidth-meter/node_modules/snmp-native/lib/snmp.js:223:12) Jan 23 17:27:19 raspberrypi homebridge[5829]: at Session.msgReceived (/usr/local/lib/node_modules/homebridge-bandwidth-meter/node_modules/snmp-native/lib/snmp.js:405:15) Jan 23 17:27:19 raspberrypi homebridge[5829]: at emitTwo (events.js:106:13) Jan 23 17:27:19 raspberrypi homebridge[5829]: at Socket.emit (events.js:191:7) Jan 23 17:27:19 raspberrypi homebridge[5829]: at UDP.onMessage [as onmessage] (dgram.js:547:8)

bangert commented 7 years ago

@sergeturgeon what device creates this snmp pdu?

sergeturgeon commented 7 years ago

Its a Ubiquity Edgerouter Lite.

Regards, Serge

On Jan 24, 2017, at 11:04 AM, Thilo Bangert notifications@github.com wrote:

@sergeturgeon https://github.com/sergeturgeon what device creates this snmp pdu?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/calmh/node-snmp-native/issues/51#issuecomment-274847367, or mute the thread https://github.com/notifications/unsubscribe-auth/AK4kYpoErmiCbzWFWWYXO4rsTJEKyKG4ks5rViD1gaJpZM4LifWH.