pacemaker
2.1.2-ada5c3b36
Scalable High-Availability cluster resource manager
|
#include <crm/common/output_internal.h>
#include <crm/pengine/pe_types.h>
#include <pacemaker.h>
#include <stdbool.h>
Go to the source code of this file.
Functions | |
int | pcmk__write_sim_dotfile (pe_working_set_t *data_set, const char *dot_file, bool all_actions, bool verbose) |
Write out a file in dot(1) format describing the actions that will be taken by the scheduler in response to an input CIB file. More... | |
void | pcmk__profile_file (const char *xml_file, long long repeat, pe_working_set_t *data_set, char *use_date) |
Profile the configuration updates and scheduler actions in a single CIB file, printing the profiling timings. More... | |
void | pcmk__profile_dir (const char *dir, long long repeat, pe_working_set_t *data_set, char *use_date) |
Profile the configuration updates and scheduler actions in every CIB file in a given directory, printing the profiling timings for each. More... | |
void | pcmk__set_effective_date (pe_working_set_t *data_set, bool print_original, char *use_date) |
Set the date of the cluster, either to the value given by use_date , or to the "execution-date" value in the CIB. More... | |
int | pcmk__simulate (pe_working_set_t *data_set, pcmk__output_t *out, pcmk_injections_t *injections, unsigned int flags, unsigned int section_opts, char *use_date, char *input_file, char *graph_file, char *dot_file) |
Simulate a cluster's response to events. More... | |
void pcmk__profile_dir | ( | const char * | dir, |
long long | repeat, | ||
pe_working_set_t * | data_set, | ||
char * | use_date | ||
) |
Profile the configuration updates and scheduler actions in every CIB file in a given directory, printing the profiling timings for each.
data_set->priv
must have been set to a valid pcmk__output_t
object before this function is called.[in] | dir | A directory full of CIB files to be profiled. |
[in] | repeat | Number of times to run on each input file. |
[in] | data_set | Working set for the cluster. |
[in] | use_date | The date to set the cluster's time to (may be NULL). |
Definition at line 289 of file pcmk_simulate.c.
void pcmk__profile_file | ( | const char * | xml_file, |
long long | repeat, | ||
pe_working_set_t * | data_set, | ||
char * | use_date | ||
) |
Profile the configuration updates and scheduler actions in a single CIB file, printing the profiling timings.
data_set->priv
must have been set to a valid pcmk__output_t
object before this function is called.[in] | xml_file | The CIB file to profile. |
[in] | repeat | Number of times to run. |
[in] | data_set | Working set for the cluster. |
[in] | use_date | The date to set the cluster's time to (may be NULL). |
Definition at line 249 of file pcmk_simulate.c.
void pcmk__set_effective_date | ( | pe_working_set_t * | data_set, |
bool | print_original, | ||
char * | use_date | ||
) |
Set the date of the cluster, either to the value given by use_date
, or to the "execution-date" value in the CIB.
data_set->priv
must have been set to a valid pcmk__output_t
object before this function is called.[in,out] | data_set | Working set for the cluster. |
[in] | print_original | If true , the "execution-date" should also be printed. |
[in] | use_date | The date to set the cluster's time to (may be NULL). |
Definition at line 327 of file pcmk_simulate.c.
int pcmk__simulate | ( | pe_working_set_t * | data_set, |
pcmk__output_t * | out, | ||
pcmk_injections_t * | injections, | ||
unsigned int | flags, | ||
unsigned int | section_opts, | ||
char * | use_date, | ||
char * | input_file, | ||
char * | graph_file, | ||
char * | dot_file | ||
) |
Simulate a cluster's response to events.
This high-level function essentially implements crm_simulate(8). It operates on an input CIB file and various lists of events that can be simulated. It optionally writes out a variety of artifacts to show the results of the simulation. Output can be modified with various flags.
[in,out] | data_set | Working set for the cluster. |
[in,out] | out | The output functions structure. |
[in] | events | A structure containing cluster events (node up/down, tickets, injected operations) and related data. |
[in] | flags | A bitfield of :pcmk_sim_flags to modify operation of the simulation. |
[in] | section_opts | Which portions of the cluster status output should be displayed? |
[in] | use_date | The date to set the cluster's time to (may be NULL). |
[in] | input_file | The source CIB file, which may be overwritten by this function (may be NULL). |
[in] | graph_file | Where to write the XML-formatted transition graph (may be NULL, in which case no file will be written). |
[in] | dot_file | Where to write the dot(1) formatted transition graph (may be NULL, in which case no file will be written). See pcmk__write_sim_dotfile() . |
Definition at line 358 of file pcmk_simulate.c.
int pcmk__write_sim_dotfile | ( | pe_working_set_t * | data_set, |
const char * | dot_file, | ||
bool | all_actions, | ||
bool | verbose | ||
) |
Write out a file in dot(1) format describing the actions that will be taken by the scheduler in response to an input CIB file.
[in] | data_set | Working set for the cluster. |
[in] | dot_file | The filename to write. |
[in] | all_actions | Write all actions, even those that are optional or are on unmanaged resources. |
[in] | verbose | Add extra information, such as action IDs, to the output. |
Definition at line 152 of file pcmk_simulate.c.