Commit Graph

864 Commits

Author SHA1 Message Date
Daniel Nichter
a593d1dab9 Add and use max_query_length and max_fingerprint_length for JSONReportFormatter: 10_000 and 5_000 chars. Report Query_length (aka bytes). 2013-06-13 16:33:46 -07:00
Daniel Nichter
a54f59626f Fix send_data() and run_services(). Add --interactive. Print message about starting online logging in start_online_logging() to avoid false-positive. eval send_data() and run_service() to catch spurious errors. 2013-06-11 11:11:11 -07:00
Daniel Nichter
b40db4ac7b Allow online logging to be disabled. 2013-06-11 10:36:42 -07:00
Daniel Nichter
058bc30e27 Actually include the n_lines in the log entry line. 2013-06-10 20:15:16 -07:00
Daniel Nichter
4db9aac13b Fix typo in run_services(). Print random stuff on STDERR as warnings. 2013-06-10 20:11:03 -07:00
Daniel Nichter
8641d55a4e Fix log entry line regex. 2013-06-10 20:02:32 -07:00
Daniel Nichter
bee0c7a5f1 Handle multi-line log events. 2013-06-10 19:59:39 -07:00
Daniel Nichter
6e3ba2ce24 Make Logger data_ts and service attribs rw. 2013-06-09 20:05:54 -07:00
Daniel Nichter
ad4e9a9207 Fix pipe handling so all log entries are written. 2013-06-09 19:29:52 -07:00
Daniel Nichter
aadb5dbd80 Queue buffered log entries when destroyed. 2013-06-09 17:33:01 -07:00
Daniel Nichter
8eff03c294 Add pid to LogEntry. Use online logging for --send-data. 2013-06-09 17:15:16 -07:00
Daniel Nichter
34bc178cd8 Rewrite Logger using pipes because Perl threads cause a small memory leak. 2013-06-09 15:53:35 -07:00
Daniel Nichter
e26a8744ef Queue and log all entries online. 2013-06-09 11:54:10 -07:00
Daniel Nichter
bcb3758f64 Make Percona/Agent/Logger always log online. 2013-06-09 10:31:56 -07:00
Daniel Nichter
f583ec6113 Update pqd so it works, sends actual new data struct. 2013-06-06 13:37:16 -05:00
Daniel Nichter
2dbe188d5b Add service, data_ts, and entry_ts to LogEntry resource. Add corresponding attribs to Logger, as well as queue_wait. 2013-05-28 20:00:59 -07:00
Daniel Nichter
95474b1669 Implement new JSON data struct in pqd. 2013-05-22 19:40:33 -07:00
Daniel Nichter
c99cb3ba58 Add copy_paste attrib to each query's hash in the JSON output with SHOW TABLE STATUS, SHOW CREATE TABLE, and non-SELECT converted to SELECT for EXPLAIN. Fix typo: EA type is 'string' not 'str'. Add host, port, and ip type hints to pqd. 2013-05-20 16:44:44 -07:00
Daniel Nichter
41a4634edb Update JSONReportFormatter: report all str attribs; don't print "# No events processed" since that's not valid JSON; rename output.t to json.t. 2013-05-20 14:47:01 -07:00
Daniel Nichter
99592409e6 Add Logger::stop_online_logging(). 2013-05-20 14:03:39 -07:00
Daniel Nichter
20c3bd6c29 Destroy Logger object. Add LogEntry module/resource. 2013-05-20 13:49:51 -07:00
Daniel Nichter
52e37e2dc2 Fix stopping logger thread for real. 2013-05-19 12:46:47 -07:00
Daniel Nichter
52d9a91b4d Fix stopping the logging thread on Ctrl-C, I think. 2013-05-19 12:09:51 -07:00
Daniel Nichter
e8fc50dad1 Enable online logging manually in Logger::enable_online_logging() instead of BUILD() because threads don't share data. 2013-05-17 09:59:20 -07:00
Daniel Nichter
fe50f5d916 Fix type: _message_queue, not message_queue. 2013-05-17 09:47:36 -07:00
Daniel Nichter
ea481471c0 Always build message queue, don't dequeue until it exists though. 2013-05-17 09:45:09 -07:00
Daniel Nichter
e2aab02bee Add sleep time between log queue sends. 2013-05-17 09:36:36 -07:00
Daniel Nichter
df6ba9f3a5 First implementation of online logging. 2013-05-17 09:32:32 -07:00
Daniel Nichter
a0ba15c27e Implement Percona::Agent::Logger without logging via API yet. 2013-05-16 16:22:36 -07:00
Daniel Nichter
82af5eaef1 Create lib/Percona/Agent/Logger.pm for asynchronous agent status logging via the API. 2013-05-15 18:31:08 -07:00
Daniel Nichter
84c8906de4 Create lib/Safeguards.pm to implement new --disk-bytes-free and --disk-pct-free in pt-agent. 2013-05-15 13:27:44 -07:00
Daniel Nichter
983af3b158 Always save response object in PWS client before returning or dying. 2013-05-10 12:15:34 -07:00
Daniel Nichter
cb9cc2794f Add Agent.actions. Make pqd warn if resume file does not exist. Print which services have been added, removed, and updated. 2013-05-10 10:12:40 -07:00
Daniel Nichter
e8eca8dde1 Merge lp:~percona-toolkit-dev/percona-toolkit/pqd-enhanced-resume-file r582. 2013-05-07 20:19:37 -07:00
Daniel Nichter
89db22894e Test get_services(). Need to fix/update other tests. 2013-04-19 14:49:01 -06:00
Daniel Nichter
7cee5a480e Add ts to Service resource. Rewrite how pt-agent handles applying services: use new meta attrib to find real service, then look for start-service and stop-service; schedule anything with a run_schedule or spool_schedule. Remove Percona/WebAPI/Util. 2013-04-18 16:47:15 -06:00
Daniel Nichter
d63bc8c9d1 Make Agent.username and .hostname optional so they can be loaded from a minimal agent file and updated at runtime. 2013-04-10 17:03:27 -06:00
Daniel Nichter
230d8e0394 Fix Agent.username default. 2013-04-10 16:57:43 -06:00
Daniel Nichter
7bfc694be4 Change Agent.user to Agent.username and make it and hostname rw. 2013-04-10 16:57:06 -06:00
Daniel Nichter
aecdca7420 Add Agent.user attribute. 2013-04-10 15:52:18 -06:00
Daniel Nichter
79c8705f02 Update default entry link. Handle catch/exit on signal better, faster. 2013-04-09 17:32:43 -06:00
Daniel Nichter
a9e06286af Handle run-once services. Stub implementation of --stop. 2013-04-08 16:17:08 -06:00
Daniel Nichter
1610cbae96 Tweak Daemon.pm: re-enable output autoflush, add parent_exit callback arg, make _check_pid_file() check if the current and existing PID are the same. 2013-04-06 10:44:20 -06:00
Daniel Nichter
2ac102da0b Large refactoring of pt-agent to make the initial start up experience more reliable, i.e. just run and wait till a good config makes everything else work. 2013-04-05 18:12:33 -06:00
Daniel Nichter
3d5325ae03 Rewrite Daemon.pm: don't require an OptionParser, one public func, run(), that does the whole daemonize process or just check the PID file. 2013-04-05 12:16:16 -06:00
Daniel Nichter
afa6533f43 Fix and test resource_diff(). 2013-03-27 11:12:38 -06:00
Daniel Nichter
9e1d935e19 Add Service.run_once_on_start. Refactor get config and get services blocks. 2013-03-22 12:08:45 -06:00
Daniel Nichter
c1cce0c6ca Get and send real program version when the agent starts. 2013-03-21 13:50:49 -06:00
Daniel Nichter
0e9e897791 Use 'Content-Type: multipart/form-data; boundary=Ym91bmRhcnk' to send multi-part data. 2013-03-21 07:52:21 -06:00
Daniel Nichter
cf0342c69e Implement and test running queries for tasks. 2013-03-19 18:17:24 -06:00