Cacti 插件中setup.php 文件的编写
Cacti 插件中setup.php 文件的编写
名词: 初始化函数 预定义函数
cacti 插件存放在 /plugins 目录,由setup.php与cacti 做关联调用;
setup.php文件由/include/plugins.php /lib/plugins.php这两个文件做解释和调用
插件名要在/include/config.php 或/include/global.php 文件中声明
声明格式如下:
$plugins[] = 'thold';
setup.php文件放置目录/plugins/插件名/setup.php
setup.php的文件内容由插件初始化函数(plugin_init_插件名())和自定义函数组成
初始化函数声明格式:
$plugin_hooks |
['user_admin_edit'] |
['thold'] |
= |
'thold_user_admin_edit' |
; |
|
预定义函数名 |
插件名 |
|
自定义函数 |
|
function plugin_init_thold() {
global $plugin_hooks;
$plugin_hooks['user_admin_edit']['thold'] = 'thold_user_admin_edit';
}
预定义函数名列表:
预定义函数名 |
插件引用函数 |
对应修改页面 |
auth_alternate_realms |
do_hook_function() |
auth.php |
login_options_navigate |
api_plugin_hook_function() |
auth_changepassword.php |
|
|
auth_login.php |
login_before |
api_plugin_hook() |
auth_login.php |
cacti_p_w_picpath |
api_plugin_hook_function() |
auth_login.php |
login_after |
api_plugin_hook() |
auth_login.php |
data_sources_table |
api_plugin_hook_function() |
data_sources.php |
graph_buttons |
api_plugin_hook() |
graph.php |
|
|
/lib/html.php |
graphs_action_array |
api_plugin_hook_function() |
graphs.php |
graphs_action_execute |
api_plugin_hook_function() |
graphs.php |
graphs_action_prepare |
api_plugin_hook_function() |
graphs.php |
graphs_new_top_links |
api_plugin_hook() |
graphs_new.php |
graph_p_w_picpath |
api_plugin_hook_function() |
graph_p_w_picpath.php |
device_action_array |
api_plugin_hook_function() |
host.php |
device_action_execute |
api_plugin_hook_function() |
host.php |
device_action_prepare |
api_plugin_hook_function() |
host.php |
console_before |
api_plugin_hook() |
index.php |
console_after |
api_plugin_hook() |
index.php |
poller_top |
api_plugin_hook() |
poller.php |
poller_command_args |
api_plugin_hook_function() |
poller.php |
poller_bottom |
api_plugin_hook() |
poller.php |
user_admin_action |
api_plugin_hook_function() |
user_admin.php |
user_admin_setup_sql_save |
api_plugin_hook_function() |
user_admin.php |
user_admin_user_save |
api_plugin_hook() |
user_admin.php |
user_admin_edit |
api_plugin_hook_function() |
user_admin.php |
user_admin_tab |
api_plugin_hook() |
user_admin.php |
user_admin_run_action |
api_plugin_hook_function() |
user_admin.php |
utilities_action |
api_plugin_hook_function() |
utilities.php |
utilities_list |
api_plugin_hook() |
utilities.php |
config_arrays |
api_plugin_hook() |
/include/global_arrays.php |
config_form |
api_plugin_hook() |
/include/global_form.php |
valid_host_fields |
api_plugin_hook_function() |
/include/global_form.php |
config_settings |
api_plugin_hook() |
/include/global_settings.php |
top_graph_header |
api_plugin_hook_function() |
/include/top_graph_header.php |
page_title |
api_plugin_hook_function() |
/include/top_graph_header.php |
|
|
/include/top_header.php |
top_graph_refresh |
api_plugin_hook_function() |
/include/top_graph_header.php |
page_head |
api_plugin_hook() |
/include/top_graph_header.php |
|
|
/include/top_header.php |
top_graph_header_tabs |
api_plugin_hook() |
/include/top_graph_header.php |
top_header |
api_plugin_hook_function() |
/include/top_header.php |
top_header_tabs |
api_plugin_hook() |
/include/top_header.php |
api_device_save |
api_plugin_hook_function() |
/lib/api_device.php |
draw_navigation_tex |
api_plugin_hook_function() |
/lib/functions.php |
poller_output |
api_plugin_hook_function() |
/lib/poller.php |
poller_on_demand |
api_plugin_hook_function() |
/lib/poller.php |
rrdtool_function_graph_cache_check |
api_plugin_hook_function() |
/lib/rrd.php |
rrd_graph_graph_options |
api_plugin_hook_function() |
/lib/rrd.php |
prep_graph_array |
api_plugin_hook_function() |
/lib/rrd.php |
rrdtool_function_graph_set_file |
api_plugin_hook_function() |
/lib/rrd.php |
substitute_host_data |
api_plugin_hook_function() |
/lib/variables.php |
自定义函数举例:
function thold_user_admin_edit ($user) {
global $fields_user_user_edit_host;
$value = '';
if ($user != 0) {
$value = db_fetch_cell("SELECT data FROM plugin_thold_contacts WHERE user_id
= $user AND type = 'email'");
}
$fields_user_user_edit_host['email'] = array(
"method" => "textbox",
"value" => $value,
"friendly_name" => "电子邮件地址",
"form_id" => "|arg1:id|",
"default" => "",
"max_length" => 255
);
}
转载于:https://blog.51cto.com/12858058/890128
Cacti 插件中setup.php 文件的编写相关推荐
- Android 系统(181 )----Android中各类.mk文件的编写
Android中各类.mk文件的编写 LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_STATIC_JAVA_LIBRARIES := ...
- 手把手教你pyqt中.qrc图片文件的编写和使用
pyqt.qrc图片文件的编写和使用 pyqt图片资源文件的引用 0x00说明: 可以通过qrc文件将我们要用的图片转化成py代码, 然后引入到需要用到的地方. 这将有利于将程序打包成exe后图片的正 ...
- ISE中UCF约束文件的编写
ISE 约束文件的基本操作 1.约束文件的概念 FPGA设计中的约束文件有3类:用户设计文件(.UCF文件).网表约束文件(.NCF文件)以及物理约束文件(.PCF文件),可以完成时序约束.管脚约束以 ...
- VScode 插件中 package.json 文件字段详解
一.package.json文件内容 {// 插件的名字,应全部小写,不能有空格: string"name": "my-vscode-plugin",// 版本 ...
- VScode 插件中 package.json 文件 activationEvents 字段详解
一.activationEvents 插件在 VScode 中默认是没有激活的,通过 activationEvents 来进行配置: onLanguage:${language} onCommand: ...
- ipynb pycharm 运行_在pychar中写入ipynb文件,PyCharm,编写
背景 我的Pycharm下面有很多Project,每个Project一个Anaconda环境,昨天新开了一个Project叫CLRS_Code,Anaconda环境名也叫CLRS_Code 然后我之前 ...
- 从jar包中读取资源文件
:[解惑]深入jar包:从jar包中读取资源文件 精华帖 (3) :: 良好帖 (15) :: 新手帖 (9) :: 隐藏帖 (0) 作者 正文 Heart.X.Raid 等级: 性别: 文章: 72 ...
- cython代码编译和setup.py文件编写
Cython 官方文档: https://cython.readthedocs.io/en/latest/ 中文文档:https://www.bookstack.cn/read/cython-doc- ...
- svga插件_【SVGA扩展】在AE或Animate中导出SVGA文件的设计师工具(mac+win)及安装教程...
SVGA扩展 – 在AE或Animate中导出SVGA文件的设计师工具 什么是SVGA SVGA 是一种全新的古文字体歌曲音乐swf转换,华为ipad华为ipad手机手机省电模式古风字体播放体验,SV ...
最新文章
- ArcFace - 人脸识别
- python爬取网易云音乐_Python 从零开始爬虫(七)——实战:网易云音乐评论爬取(附加密算法)...
- SAS 对数据的拼接与串接
- 基于FPGA的跳舞机实现
- Moving stones(暴力+思维)
- 然爸读书笔记(2014-5)----团队正能量
- amazeui学习笔记--css(常用组件1)--小徽章Badge
- 二维ising模型概率c语言_盘点近几年在二维材料中发现的铁磁性
- PLSA隐变量主题模型的公式推导解惑
- macos无法验证此app不包含恶意软件_macOS 平台的一款后门样本(TinyTim)的分析
- 领英使用手册—管理,使用领英linkedin账号的技巧方法
- 全网音乐Music Download v2.1.2
- 微信网页开发 无法播放视频
- R语言:循环读取相似文件名的文件:
- vue登录时验证码获取
- c++智能指针转化:static_pointer_cast、dynamic_pointer_cast、const_pointer_cast、reinterpret_pointer_cast
- 使用 HTML、CSS 和 JavaScript 的简单模拟时钟
- Servlet重定向和转发
- 大话设计模式读书笔记
- System Extract 步骤
热门文章
- php的框架目录,Laravel 框架目录结构
- c# 字典按ascii 排序_sort命令-将文件进行排序并输出
- 数据库系统概论:第八章 数据库编程
- app式成语_聊斋成语
- python浅拷贝和深拷贝
- 2017.11.23知识点整理
- Software Testing Homework03:
- P3390矩阵快速幂
- dirname(__FILE__) 介绍
- [Window] .MUS 0x80070422 Error