X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=snmp%2Flustre-snmp-util.h;h=e37b2159ed833bc9c4b8ad8aad8f5699a945478b;hp=56770a2ea8b8a86a8d119404646b94acf4253b77;hb=4d2ad7dcd6b55a81d3f5b8f832a72edb00b5f302;hpb=9f55644462ae062125314358afc3adf28e07ee27 diff --git a/snmp/lustre-snmp-util.h b/snmp/lustre-snmp-util.h index 56770a2..e37b215 100644 --- a/snmp/lustre-snmp-util.h +++ b/snmp/lustre-snmp-util.h @@ -1,28 +1,42 @@ -/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- - * vim:expandtab:shiftwidth=8:tabstop=8: +/* + * GPL HEADER START + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 only, + * as published by the Free Software Foundation. * - * Copyright (c) 2005 Cluster File Systems, Inc. - * Author: PJ Kirner + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License version 2 for more details (a copy is included + * in the LICENSE file that accompanied this code). * - * This file is part of Lustre, http://www.lustre.org. + * You should have received a copy of the GNU General Public License + * version 2 along with this program; If not, see + * http://www.gnu.org/licenses/gpl-2.0.html * - * Lustre is free software; you can redistribute it and/or - * modify it under the terms of version 2 of the GNU General Public - * License as published by the Free Software Foundation. + * GPL HEADER END + */ +/* + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. + * Use is subject to license terms. + */ +/* + * This file is part of Lustre, http://www.lustre.org/ + * Lustre is a trademark of Sun Microsystems, Inc. * - * Lustre is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * snmp/lustre-snmp-util.h * - * You should have received a copy of the GNU General Public License - * along with Lustre; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Author: PJ Kirner */ #ifndef LUSTRE_SNMP_UTIL_H #define LUSTRE_SNMP_UTIL_H +#include + /* * Definitions of magic values */ @@ -56,6 +70,7 @@ #define MDDFREECAPACITY 54 #define MDDFILES 55 #define MDDFREEFILES 56 +#define MDSNBSAMPLEDREQ 57 #define MDCNUMBER 60 #define MDCUUID 61 @@ -95,18 +110,20 @@ #define LDLMUNUSEDLOCKCOUNT 103 #define LDLMRESOURCECOUNT 104 -/* Defining the proc paths for Lustre file system */ -#define LUSTRE_PATH "/proc/fs/lustre/" -#define OSD_PATH LUSTRE_PATH "obdfilter/" -#define OSC_PATH LUSTRE_PATH "osc/" -#define MDS_PATH LUSTRE_PATH "mds/" -#define MDC_PATH LUSTRE_PATH "mdc/" -#define CLIENT_PATH LUSTRE_PATH "llite/" -#define LOV_PATH LUSTRE_PATH "lov/" -#define LDLM_PATH LUSTRE_PATH "ldlm/namespaces/" +#define LNETNUMBER 110 +#define LNETMSGSALLOC 111 +#define LNETMSGSMAX 112 +#define LNETERRORS 113 +#define LNETSENDCOUNT 114 +#define LNETRECVCOUNT 115 +#define LNETROUTECOUNT 116 +#define LNETDROPCOUNT 117 +#define LNETSENDBYTES 118 +#define LNETRECVBYTES 119 +#define LNETROUTEBYTES 120 +#define LNETDROPBYTES 121 /* Common procfs file entries that are refrenced in mulitple locations*/ -#define FILENAME_SYSHEALTHCHECK "health_check" #define FILENAME_SYS_STATUS "/var/lustre/sysStatus" #define FILENAME_NUM_REF "num_refs" @@ -116,6 +133,7 @@ #define FILENAME_KBYTES_FREE "kbytesfree" #define FILENAME_FILES_TOTAL "filestotal" #define FILENAME_FILES_FREE "filesfree" +#define STR_REQ_WAITIME "req_waittime" /* strings which the file /var/lustre/sysStatus can hold */ #define STR_ONLINE "online" @@ -154,7 +172,7 @@ typedef enum { } lustre_sysstatus; /* File operation related functions */ -char *get_file_list(const char *dirname, int file_type, __u32 *count); +char *get_file_list(const char *dirname, int file_type, uint32_t *count); extern int is_directory(const char *filename); extern int read_string(const char *filepath, char *lustre_var,size_t var_size); int read_counter64(const char *file_path, counter64 *c64,int factor); @@ -194,4 +212,15 @@ unsigned char * const char *path, struct oid_table *ptable); +void convert_ull(counter64 *c64, unsigned long long ull, size_t *var_len); +int stats_values(char * filepath,char * name_value, unsigned long long * nb_sample, unsigned long long * min, unsigned long long * max, unsigned long long * sum, unsigned long long * sum_square); +extern int mds_stats_values(char * name_value, unsigned long long * nb_sample, unsigned long long * min, unsigned long long * max, unsigned long long * sum, unsigned long long * sum_square); + + /* export for net-snmp util-funcs */ +int header_simple_table(struct variable *, oid *, size_t *, + int, size_t *, + WriteMethod ** write_method, int); +int header_generic(struct variable *, oid *, size_t *, int, + size_t *, WriteMethod **); + #endif /* LUSTRE_SNMP_UTIL_H */