[
https://issues.apache.org/jira/browse/MINIFICPP-1421?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marton Szasz updated MINIFICPP-1421:
------------------------------------
Fix Version/s: (was: 0.8.0)
0.9.0
> Investigate and fix C2JstackTest
> --------------------------------
>
> Key: MINIFICPP-1421
> URL: https://issues.apache.org/jira/browse/MINIFICPP-1421
> Project: Apache NiFi MiNiFi C++
> Issue Type: Bug
> Affects Versions: 1.0.0
> Reporter: Adam Hunyadi
> Priority: Minor
> Labels: MiNiFi-CPP-Hygiene
> Fix For: 0.9.0
>
> Time Spent: 1h
> Remaining Estimate: 0h
>
> *Background:*
> C2JstackTest is currently looks for a log line that contains the word
> "SchedulingAgent". This line however is only present due to the
> LogTestController logs that log lines from the SchedulingAgents will not be
> shown.
> {code:bash|title=Filtered test output}
> ➜ ./extensions/http-curl/tests/C2JstackTest
> ../src/libminifi/test/resources/TestHTTPGet.yml
> ../src/libminifi/test/resources/ |& grep "SchedulingAgent"
>
> [2020-12-08 10:48:51.955]
> [org::apache::nifi::minifi::core::logging::LoggerConfiguration] [debug]
> org::apache::nifi::minifi::SchedulingAgent logger got sinks from namespace
> root and level error from namespace root
> [2020-12-08 10:48:51.955]
> [org::apache::nifi::minifi::core::logging::LoggerConfiguration] [debug]
> org::apache::nifi::minifi::ThreadedSchedulingAgent logger got sinks from
> namespace root and level error from namespace root
> [2020-12-08 10:48:51.955]
> [org::apache::nifi::minifi::core::logging::LoggerConfiguration] [debug]
> org::apache::nifi::minifi::TimerDrivenSchedulingAgent logger got sinks from
> namespace root and level error from namespace root
> {code}
> Enabling all sinks still did not produce any relevant log line that would be
> worth matching against:
> {code:c++}
> #include
> "../../extensions/standard-processors/controllers/UnorderedMapKeyValueStoreService.h"
> #include
> "../../extensions/standard-processors/controllers/UnorderedMapPersistableKeyValueStoreService.h"
> #include "../../extensions/http-curl/processors/InvokeHTTP.h"
> #include "../../extensions/http-curl/processors/InvokeHTTP.h"
> #include "../../extensions/standard-processors/processors/LogAttribute.h"
> #include "../../extensions/standard-processors/processors/LogAttribute.h"
> #include "../../libminifi/include/c2/ControllerSocketProtocol.h"
> #include "../../libminifi/include/c2/ControllerSocketProtocol.h"
> #include "../../extensions/standard-processors/processors/AppendHostInfo.h"
> #include "../../extensions/standard-processors/processors/AppendHostInfo.h"
> #include "../../extensions/standard-processors/processors/ExecuteProcess.h"
> #include "../../extensions/standard-processors/processors/ExecuteProcess.h"
> #include "../../extensions/standard-processors/processors/ExtractText.h"
> #include "../../extensions/standard-processors/processors/ExtractText.h"
> #include "../../extensions/standard-processors/processors/GenerateFlowFile.h"
> #include "../../extensions/standard-processors/processors/GenerateFlowFile.h"
> #include "../../extensions/standard-processors/processors/GetFile.h"
> #include "../../extensions/standard-processors/processors/GetFile.h"
> #include "../../extensions/standard-processors/processors/GetTCP.h"
> #include "../../extensions/standard-processors/processors/GetTCP.h"
> #include "../../extensions/standard-processors/processors/HashContent.h"
> #include "../../extensions/standard-processors/processors/HashContent.h"
> #include "../../extensions/standard-processors/processors/ListenSyslog.h"
> #include "../../extensions/standard-processors/processors/ListenSyslog.h"
> #include "../../extensions/standard-processors/processors/PutFile.h"
> #include "../../extensions/standard-processors/processors/PutFile.h"
> #include "../../extensions/standard-processors/processors/RetryFlowFile.h"
> #include "../../extensions/standard-processors/processors/RetryFlowFile.h"
> #include "../../extensions/standard-processors/processors/RouteOnAttribute.h"
> #include "../../extensions/standard-processors/processors/RouteOnAttribute.h"
> #include "../../extensions/standard-processors/processors/TailFile.h"
> #include "../../extensions/standard-processors/processors/TailFile.h"
> #include "../../extensions/standard-processors/processors/UpdateAttribute.h"
> #include "../../extensions/standard-processors/processors/UpdateAttribute.h"
> #include "../../extensions/http-curl/protocols/AgentPrinter.h"
> #include "../../extensions/http-curl/protocols/AgentPrinter.h"
> #include "../../extensions/http-curl/protocols/RESTReceiver.h"
> #include "../../extensions/http-curl/protocols/RESTReceiver.h"
> #include "../../extensions/civetweb/processors/ListenHTTP.h"
> #include "../../extensions/civetweb/processors/ListenHTTP.h"
> (...)
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::utils::IdGenerator>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::FlowFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::provenance::ProvenanceEventRecord>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::FlowFileRecord>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::Properties>();
> LogTestController::getInstance().setTrace<LogTestController>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::C2Agent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::RESTSender>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::FlowController>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::utils::HTTPClient>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::Connectable>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::Repository>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::repository::VolatileContentRepository>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::utils::file::FileSystem>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::FlowConfiguration>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::ConfigurableComponent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::controller::StandardControllerServiceProvider>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::YamlConfiguration>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::controllers::AbstractAutoPersistingKeyValueStoreService>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::controllers::UnorderedMapKeyValueStoreService>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::controllers::UnorderedMapPersistableKeyValueStoreService>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::controller::StandardControllerServiceNode>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::ProcessGroup>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::Processor>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::InvokeHTTP>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::LogAttribute>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::Connection>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::C2Client>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::FlowControlProtocol>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::SchedulingAgent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::ThreadedSchedulingAgent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::TimerDrivenSchedulingAgent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::repository::FileSystemRepository>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::ProcessContext>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::core::ProcessSession>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::provenance::ProvenanceReporter>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::utils::ByteOutputCallback>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::ControllerSocketProtocol>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::AppendHostInfo>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::ExecuteProcess>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::ExtractText>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::GenerateFlowFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::GetFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::GetTCP>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::HashContent>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::ListenSyslog>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::PutFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::RetryFlowFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::RouteOnAttribute>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::TailFile>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::UpdateAttribute>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::AgentPrinter>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::c2::RESTReceiver>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::processors::ListenHTTP>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::controllers::SSLContextService>();
> LogTestController::getInstance().setTrace<org::apache::nifi::minifi::controllers::UpdatePolicyControllerService>();
> {code}
> {code:bash|title=Test output with filters}
> ➜ build ./extensions/http-curl/tests/C2JstackTest
> ../src/libminifi/test/resources/TestHTTPGet.yml
> ../src/libminifi/test/resources/ |& egrep -v "got sinks|log level" | grep
> "SchedulingAgent"
> [2020-12-08 13:23:08.954]
> [org::apache::nifi::minifi::ThreadedSchedulingAgent] [debug] Shutting down
> threads for processor invoke/2438e3c8-015a-1000-79ca-83af40ec1991
> [2020-12-08 13:23:08.954]
> [org::apache::nifi::minifi::ThreadedSchedulingAgent] [debug] Shutting down
> threads for processor invoke/2438e3c8-015a-1000-79ca-83af40ec1991
> [2020-12-08 13:23:08.954]
> [org::apache::nifi::minifi::ThreadedSchedulingAgent] [warning] Cannot
> unschedule threads for processor invoke because it is not running
> [2020-12-08 13:23:08.954]
> [org::apache::nifi::minifi::ThreadedSchedulingAgent] [debug] Shutting down
> threads for processor LogAttribute/2438e3c8-015a-1000-79ca-83af40ec1992
> {code}
> *Proposal:*
> As the test breaks if once we disable the inclusion of "logger got sinks" by
> default on test, we should turn off this test and at some point investigate
> what exactly the test was meant to check. One could probably check out the
> version of the MiNiFi this was introduced in and see if something important
> was captured by checking against this log line.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)