(opts []nats.Option)
| 117 | } |
| 118 | |
| 119 | func setupConnOptions(opts []nats.Option) []nats.Option { |
| 120 | totalWait := 10 * time.Minute |
| 121 | reconnectDelay := time.Second |
| 122 | |
| 123 | opts = append(opts, nats.ReconnectWait(reconnectDelay)) |
| 124 | opts = append(opts, nats.MaxReconnects(int(totalWait/reconnectDelay))) |
| 125 | opts = append(opts, nats.DisconnectErrHandler(func(nc *nats.Conn, err error) { |
| 126 | log.Printf("Disconnected due to: %s, will attempt reconnects for %.0fm", err, totalWait.Minutes()) |
| 127 | })) |
| 128 | opts = append(opts, nats.ReconnectHandler(func(nc *nats.Conn) { |
| 129 | log.Printf("Reconnected [%s]", nc.ConnectedUrl()) |
| 130 | })) |
| 131 | opts = append(opts, nats.ClosedHandler(func(nc *nats.Conn) { |
| 132 | log.Fatalf("Exiting: %v", nc.LastError()) |
| 133 | })) |
| 134 | return opts |
| 135 | } |
no test coverage detected