]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/DiskIO/DiskDaemon/DiskdAction.h
2 * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
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.
9 /* DEBUG: section 79 Squid-side DISKD I/O functions. */
11 #ifndef SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H
12 #define SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H
14 #include "ipc/forward.h"
15 #include "mgr/Action.h"
16 #include "mgr/forward.h"
18 /// store disk daemon stats
23 DiskdActionData
& operator += (const DiskdActionData
& stats
);
30 double open_fail_queue_len
;
31 double block_queue_len
;
36 double create_success
;
42 double unlink_success
;
52 /// implement aggregated 'diskd' action
53 class DiskdAction
: public Mgr::Action
56 DiskdAction(const Mgr::CommandPointer
&aCmd
);
59 static Pointer
Create(const Mgr::CommandPointer
&aCmd
);
61 void add(const Mgr::Action
& action
) override
;
62 void pack(Ipc::TypedMsgHdr
& hdrMsg
) const override
;
63 void unpack(const Ipc::TypedMsgHdr
& hdrMsg
) override
;
67 void collect() override
;
68 void dump(StoreEntry
* entry
) override
;
74 #endif /* SQUID_SRC_DISKIO_DISKDAEMON_DISKDACTION_H */