Just wanted to post some examples of what I think should probably warnings. I think these cover the majority of what still remains. Honestly a lot has already been cleaned up.
Unexpected EOF
2021-01-29T13:14:14.093Z ERROR piecestore upload failed {"Piece ID": "C3BEPFFW33RL5KPV7S3DXX4CVCXTL5SNUHVH7IR42L3HZJDQOKGQ", "Satellite ID": "12L9ZFwhzVpuEKMUNUqkaTLGzwY9G24tbiigLiXpmZWKwmcNDDs", "Action": "PUT", "error": "unexpected EOF", "errorVerbose": "unexpected EOF\n\tstorj.io/common/rpc/rpcstatus.Error:82\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Upload:325\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func1:996\n\tstorj.io/drpc/drpcmux.(*Mux).HandleRPC:29\n\tstorj.io/common/rpc/rpctracing.(*Handler).HandleRPC:58\n\tstorj.io/drpc/drpcserver.(*Server).handleRPC:111\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:62\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:99\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51", "Size": 1318912}
Context deadline exceeded
2021-01-29T04:34:14.704Z ERROR piecestore upload failed {"Piece ID": "V5B4PVK5JVRHZP7OF66HTNFEXAW22WLXMRJWIRSUWLLQO747FXTQ", "Satellite ID": "12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB", "Action": "PUT_REPAIR", "error": "context deadline exceeded", "errorVerbose": "context deadline exceeded\n\tstorj.io/common/rpc/rpcstatus.Wrap:74\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Upload:327\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func1:996\n\tstorj.io/drpc/drpcmux.(*Mux).HandleRPC:29\n\tstorj.io/common/rpc/rpctracing.(*Handler).HandleRPC:58\n\tstorj.io/drpc/drpcserver.(*Server).handleRPC:111\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:62\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:99\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51", "Size": 1318912}
Context deadline exceeded, similar for download
2021-01-24T16:06:42.172Z ERROR piecestore download failed {"Piece ID": "KHMYUUB5I5VKLVSOZ7FQJTPKBVWQGTED4NPASRSDIGHZFPRFH63Q", "Satellite ID": "12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB", "Action": "GET", "error": "context deadline exceeded", "errorVerbose": "context deadline exceeded\n\tstorj.io/common/rpc/rpcstatus.Wrap:74\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download.func6:628\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download:646\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func2:1004\n\tstorj.io/drpc/drpcmux.(*Mux).HandleRPC:29\n\tstorj.io/common/rpc/rpctracing.(*Handler).HandleRPC:58\n\tstorj.io/drpc/drpcserver.(*Server).handleRPC:111\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:62\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:99\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51"}
Use of closed network connection
2021-01-27T14:06:07.534Z ERROR piecestore download failed {"Piece ID": "SPD7CBKVBXYEZF6T247C6BJXCE2D3LURVDWNIQIQ6PM3B4DUGYPQ", "Satellite ID": "121RTSDpyNZVcEU84Ticf2L1ntiuUimbWgfATz21tuvgk3vzoA6", "Action": "GET", "error": "write tcp 172.17.0.3:28967->172.17.0.1:50572: use of closed network connection", "errorVerbose": "write tcp 172.17.0.3:28967->172.17.0.1:50572: use of closed network connection\n\tstorj.io/drpc/drpcstream.(*Stream).pollWrite:228\n\tstorj.io/drpc/drpcwire.SplitN:29\n\tstorj.io/drpc/drpcstream.(*Stream).RawWrite:276\n\tstorj.io/drpc/drpcstream.(*Stream).MsgSend:322\n\tstorj.io/common/pb.(*drpcPiecestoreDownloadStream).Send:1089\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download.func5.1:580\n\tstorj.io/common/rpc/rpctimeout.Run.func1:22"}
Use of closed network connection, slightly different
2021-01-26T11:51:11.073Z ERROR piecestore download failed {"Piece ID": "YUO5ZPFKIMBH45ASEQD3XNHWNRBN3TZHJKZLBWW3B2ODZ5OOW6AQ", "Satellite ID": "12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB", "Action": "GET", "error": "tls: use of closed connection", "errorVerbose": "tls: use of closed connection\n\tstorj.io/drpc/drpcstream.(*Stream).pollWrite:228\n\tstorj.io/drpc/drpcwire.SplitN:29\n\tstorj.io/drpc/drpcstream.(*Stream).RawWrite:276\n\tstorj.io/drpc/drpcstream.(*Stream).MsgSend:322\n\tstorj.io/common/pb.(*drpcPiecestoreDownloadStream).Send:1089\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download.func5.1:580\n\tstorj.io/common/rpc/rpctimeout.Run.func1:22"}
All of these will only impact a single transfer and are likely connected to either problems on the other side or long tail cancellation. If you have few of these (I had maybe 5-10 a day), it’s almost certainly not an issue.
Yet if anything like this happens during an audit it probably should be an error.
Not entirely sure about these ones:
Satellite was down when this error popped up
2021-01-28T22:10:58.867Z ERROR contact:service ping satellite failed {"Satellite ID": "12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB", "attempts":11, "error": "ping satellite error: rpc: dial tcp 35.228.10.185:7777: connect: connection refused", "errorVerbose": "ping satellite error: rpc: dial tcp 35.228.10.185:7777: connect: connection refused\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:152\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57"}
Unable to get signee trust
2021-01-24T04:53:53.887Z ERROR piecestore download failed {"Piece ID": "3GDB4UEPXO7UC5DUH3QBWOLXRMHHZHKAPVFP3NZ7WKT2WPOTFXZA", "Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Action": "GET", "error": "untrusted: unable to get signee: trust: rpc: dial tcp: operation was canceled", "errorVerbose": "untrusted: unable to get signee: trust: rpc: dial tcp: operation was canceled\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).VerifyOrderLimitSignature:140\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).verifyOrderLimit:62\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download:462\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func2:1004\n\tstorj.io/drpc/drpcmux.(*Mux).HandleRPC:29\n\tstorj.io/common/rpc/rpctracing.(*Handler).HandleRPC:58\n\tstorj.io/drpc/drpcserver.(*Server).handleRPC:111\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:62\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:99\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51"}
That last one can happen when you have connection issues too, so ERROR might be warranted. Depends on the context though.
Actually, I just noticed that one was preceeded by this.
2021-01-24T04:53:40.775Z ERROR servers unexpected shutdown of a runner {"name": "debug", "error": "debug: http: Server closed", "errorVerbose": "debug: http: Server closed\n\tstorj.io/private/debug.(*Server).Run.func2:108\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57"}
Which might indicate a legitimate issue… Just looked a bit further. These last 2 errors happened during an update. So because the node was killed by the OS. It would be nice if it could do this a little more gracefully without throwing errors. But lets focus on that later. We can ignore these for now.
As for file does not exist, I would say that’s usually a legitimate error, but there can also be this…
2021-01-18T16:22:06.758Z INFO piecestore upload started {"Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA", "Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Action": "PUT", "Available Space": 7963735671296}
2021-01-18T16:22:07.279Z INFO piecestore uploaded {"Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA", "Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Action": "PUT"}
2021-01-18T16:22:08.992Z INFO piecestore download started {"Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA", "Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Action": "GET"}
2021-01-18T16:22:10.856Z DEBUG pieces deleted piece {"Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA"}
2021-01-18T16:22:10.856Z INFO piecedeleter deleted {"Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA"}
2021-01-18T16:22:10.861Z ERROR piecestore download failed {"Piece ID": "ZK4UXAIHY5T4FKW4UEDPNC7FISVP7U3U7MQD6NN6RX57UHO5XIJA", "Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "Action": "GET", "error": "file does not exist", "errorVerbose": "file does not exist\n\tstorj.io/common/rpc/rpcstatus.Wrap:74\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).Download:506\n\tstorj.io/common/pb.DRPCPiecestoreDescription.Method.func2:1004\n\tstorj.io/drpc/drpcmux.(*Mux).HandleRPC:29\n\tstorj.io/common/rpc/rpctracing.(*Handler).HandleRPC:58\n\tstorj.io/drpc/drpcserver.(*Server).handleRPC:111\n\tstorj.io/drpc/drpcserver.(*Server).ServeOne:62\n\tstorj.io/drpc/drpcserver.(*Server).Serve.func2:99\n\tstorj.io/drpc/drpcctx.(*Tracker).track:51"}
On a funny side note, had a chuckle when these lines popped up...
2021-01-24T16:04:01.897Z INFO piecestore download started {“Piece ID”: “ISCX5CD4QDBC76I2MIA2TA5VQHMGGVCOY36F2IDWQDGYERROR3JQ”, “Satellite ID”: “1wFTAgs9DP5RSnCqKV1eLf6N9wtk4EAtmN5DpSxcs8EjT69tGE”, “Action”: “GET_REPAIR”}
2021-01-20T15:25:44.704Z INFO piecestore upload started {“Piece ID”: “V3QSGDEYKYRCGTOYIPAAERROR7NWE6CHDA6QXXQXUWOVUHYIGYVQ”, “Satellite ID”: “12L9ZFwhzVpuEKMUNUqkaTLGzwY9G24tbiigLiXpmZWKwmcNDDs”, “Action”: “PUT”, “Available Space”: 7940842964992}
What are the odds…