- else if (status != 0)
- {
- INFO ("Filter subsystem: Built-in target `write': Dispatching value to "
- "all write plugins failed with status %i.", status);
- }
- else
- {
- assert (status == 0);
- c_release (LOG_INFO, &enoent_complaint, "Filter subsystem: "
- "Built-in target `write': Some write plugin is back to normal "
- "operation. `write' succeeded.");
- }
- }
- else
- {
- size_t i;
-
- for (i = 0; plugin_list[i] != NULL; i++)
- {
- status = plugin_write (plugin_list[i], ds, vl);
- if (status != 0)
- {
- INFO ("Filter subsystem: Built-in target `write': Dispatching value to "
- "the `%s' plugin failed with status %i.", plugin_list[i], status);
+ } else {
+ for (size_t i = 0; plugin_list[i].plugin != NULL; i++) {
+ status = plugin_write(plugin_list[i].plugin, ds, vl);
+ if (status != 0) {
+ c_complain(
+ LOG_INFO, &plugin_list[i].complaint,
+ "Filter subsystem: Built-in target `write': Dispatching value to "
+ "the `%s' plugin failed with status %i.",
+ plugin_list[i].plugin, status);
+
+ plugin_log_available_writers();
+ } else {
+ c_release(
+ LOG_INFO, &plugin_list[i].complaint,
+ "Filter subsystem: Built-in target `write': Plugin `%s' is back "
+ "to normal operation. `write' succeeded.",
+ plugin_list[i].plugin);