#include "lib/network.h"
#include "lib/ns.h"
#include "lib/frr_pthread.h"
+#include "zebra/debug.h"
#include "zebra/interface.h"
#include "zebra/zebra_dplane.h"
#include "zebra/zebra_router.h"
if (rv == 0) {
atomic_fetch_add_explicit(&fnc->counters.connection_closes, 1,
memory_order_relaxed);
- zlog_debug("%s: connection closed", __func__);
+
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug("%s: connection closed", __func__);
+
fpm_reconnect(fnc);
return 0;
}
atomic_fetch_add_explicit(&fnc->counters.connection_errors, 1,
memory_order_relaxed);
- zlog_debug("%s: connection failure: %s", __func__,
- strerror(errno));
+ zlog_warn("%s: connection failure: %s", __func__,
+ strerror(errno));
fpm_reconnect(fnc);
return 0;
}
&statuslen);
if (rv == -1 || status != 0) {
if (rv != -1)
- zlog_debug("%s: connection failed: %s",
- __func__, strerror(status));
+ zlog_warn("%s: connection failed: %s", __func__,
+ strerror(status));
else
- zlog_debug("%s: SO_ERROR failed: %s", __func__,
- strerror(status));
+ zlog_warn("%s: SO_ERROR failed: %s", __func__,
+ strerror(status));
atomic_fetch_add_explicit(
&fnc->counters.connection_errors, 1,
atomic_fetch_add_explicit(
&fnc->counters.connection_closes, 1,
memory_order_relaxed);
- zlog_debug("%s: connection closed", __func__);
+
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug("%s: connection closed", __func__);
break;
}
if (bwritten == -1) {
atomic_fetch_add_explicit(
&fnc->counters.connection_errors, 1,
memory_order_relaxed);
- zlog_debug("%s: connection failure: %s", __func__,
- strerror(errno));
+ zlog_warn("%s: connection failure: %s", __func__,
+ strerror(errno));
fpm_reconnect(fnc);
break;
}
slen = sizeof(*sin6);
}
- zlog_debug("%s: attempting to connect to %s:%d", __func__, addrstr,
- ntohs(sin->sin_port));
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug("%s: attempting to connect to %s:%d", __func__,
+ addrstr, ntohs(sin->sin_port));
rv = connect(sock, (struct sockaddr *)&fnc->addr, slen);
if (rv == -1 && errno != EINPROGRESS) {
rv = netlink_route_multipath(RTM_DELROUTE, ctx, nl_buf,
sizeof(nl_buf), true);
if (rv <= 0) {
- zlog_debug("%s: netlink_route_multipath failed",
- __func__);
+ zlog_err("%s: netlink_route_multipath failed",
+ __func__);
return 0;
}
&nl_buf[nl_buf_len],
sizeof(nl_buf) - nl_buf_len, true);
if (rv <= 0) {
- zlog_debug("%s: netlink_route_multipath failed",
- __func__);
+ zlog_err("%s: netlink_route_multipath failed",
+ __func__);
return 0;
}
case DPLANE_OP_MAC_DELETE:
rv = netlink_macfdb_update_ctx(ctx, nl_buf, sizeof(nl_buf));
if (rv <= 0) {
- zlog_debug("%s: netlink_macfdb_update_ctx failed",
- __func__);
+ zlog_err("%s: netlink_macfdb_update_ctx failed",
+ __func__);
return 0;
}
break;
default:
- zlog_debug("%s: unhandled data plane message (%d) %s",
- __func__, dplane_ctx_get_op(ctx),
- dplane_op2str(dplane_ctx_get_op(ctx)));
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug("%s: unhandled data plane message (%d) %s",
+ __func__, dplane_ctx_get_op(ctx),
+ dplane_op2str(dplane_ctx_get_op(ctx)));
break;
}
if (STREAM_WRITEABLE(fnc->obuf) < (nl_buf_len + FPM_HEADER_SIZE)) {
atomic_fetch_add_explicit(&fnc->counters.buffer_full, 1,
memory_order_relaxed);
- zlog_debug("%s: buffer full: wants to write %zu but has %zu",
- __func__, nl_buf_len + FPM_HEADER_SIZE,
- STREAM_WRITEABLE(fnc->obuf));
+
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug(
+ "%s: buffer full: wants to write %zu but has %zu",
+ __func__, nl_buf_len + FPM_HEADER_SIZE,
+ STREAM_WRITEABLE(fnc->obuf));
+
return -1;
}
switch (event) {
case FNE_DISABLE:
- zlog_debug("%s: manual FPM disable event", __func__);
+ zlog_info("%s: manual FPM disable event", __func__);
fnc->disabled = true;
atomic_fetch_add_explicit(&fnc->counters.user_disables, 1,
memory_order_relaxed);
break;
case FNE_RECONNECT:
- zlog_debug("%s: manual FPM reconnect event", __func__);
+ zlog_info("%s: manual FPM reconnect event", __func__);
fnc->disabled = false;
atomic_fetch_add_explicit(&fnc->counters.user_configures, 1,
memory_order_relaxed);
break;
case FNE_RESET_COUNTERS:
- zlog_debug("%s: manual FPM counters reset event", __func__);
+ zlog_info("%s: manual FPM counters reset event", __func__);
memset(&fnc->counters, 0, sizeof(fnc->counters));
break;
default:
- zlog_debug("%s: unhandled event %d", __func__, event);
+ if (IS_ZEBRA_DEBUG_FPM)
+ zlog_debug("%s: unhandled event %d", __func__, event);
break;
}