DiskdAction.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 /* DEBUG: section 79 Squid-side DISKD I/O functions. */
10 
11 #ifndef SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H
12 #define SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H
13 
14 #include "ipc/forward.h"
15 #include "mgr/Action.h"
16 #include "mgr/forward.h"
17 
20 {
21 public:
24 
25 public:
26  double sent_count;
27  double recv_count;
28  double max_away;
29  double max_shmuse;
32  double open_ops;
33  double open_success;
34  double open_fail;
35  double create_ops;
37  double create_fail;
38  double close_ops;
39  double close_success;
40  double close_fail;
41  double unlink_ops;
43  double unlink_fail;
44  double read_ops;
45  double read_success;
46  double read_fail;
47  double write_ops;
48  double write_success;
49  double write_fail;
50 };
51 
53 class DiskdAction: public Mgr::Action
54 {
55 protected:
56  DiskdAction(const Mgr::CommandPointer &aCmd);
57 
58 public:
59  static Pointer Create(const Mgr::CommandPointer &aCmd);
60  /* Action API */
61  void add(const Mgr::Action& action) override;
62  void pack(Ipc::TypedMsgHdr& hdrMsg) const override;
63  void unpack(const Ipc::TypedMsgHdr& hdrMsg) override;
64 
65 protected:
66  /* Action API */
67  void collect() override;
68  void dump(StoreEntry* entry) override;
69 
70 private:
72 };
73 
74 #endif /* SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H */
75 
double unlink_success
Definition: DiskdAction.h:42
DiskdAction(const Mgr::CommandPointer &aCmd)
Definition: DiskdAction.cc:65
DiskdActionData & operator+=(const DiskdActionData &stats)
Definition: DiskdAction.cc:27
double unlink_ops
Definition: DiskdAction.h:41
implement aggregated 'diskd' action
Definition: DiskdAction.h:53
double open_fail
Definition: DiskdAction.h:34
double max_shmuse
Definition: DiskdAction.h:29
double close_ops
Definition: DiskdAction.h:38
double open_success
Definition: DiskdAction.h:33
double read_success
Definition: DiskdAction.h:45
void dump(StoreEntry *entry) override
Definition: DiskdAction.cc:115
double create_ops
Definition: DiskdAction.h:35
void pack(Ipc::TypedMsgHdr &hdrMsg) const override
pack collected action info into a message to be sent to Coordinator
Definition: DiskdAction.cc:141
double open_fail_queue_len
Definition: DiskdAction.h:30
double block_queue_len
Definition: DiskdAction.h:31
double close_fail
Definition: DiskdAction.h:40
double create_fail
Definition: DiskdAction.h:37
double write_ops
Definition: DiskdAction.h:47
double unlink_fail
Definition: DiskdAction.h:43
void collect() override
calculate and keep local action-specific information
Definition: DiskdAction.cc:79
double read_fail
Definition: DiskdAction.h:46
store disk daemon stats
Definition: DiskdAction.h:19
double write_success
Definition: DiskdAction.h:48
double create_success
Definition: DiskdAction.h:36
double recv_count
Definition: DiskdAction.h:27
void unpack(const Ipc::TypedMsgHdr &hdrMsg) override
unpack action info from the message received by Coordinator
Definition: DiskdAction.cc:148
double write_fail
Definition: DiskdAction.h:49
DiskdActionData data
Definition: DiskdAction.h:71
struct msghdr with a known type, fixed-size I/O and control buffers
Definition: TypedMsgHdr.h:34
double sent_count
Definition: DiskdAction.h:26
double close_success
Definition: DiskdAction.h:39
static Pointer Create(const Mgr::CommandPointer &aCmd)
Definition: DiskdAction.cc:60
void add(const Mgr::Action &action) override
incrementally merge in remote information (of the same action type)
Definition: DiskdAction.cc:72

 

Introduction

Documentation

Support

Miscellaneous