Hi Everyone,
I have configure my Orcacle.yml file in module.d folder with all required details ,also started the metricbeat.
Still i am not able to see anything in my my oracle dashboard .
is there any more setting i need to do .
please suggest.
Thanks in advance,
Mrunalini
Hi
@mrunalini
,
You can run a couple of tests to verify that everything is configured properly:
metricbeat test output
this will verify that Metricbeat can connect to the output
metricbeat test modules
to test your modules settings. You can also run
metricbeat test modules oracle
to test only the oracle module.
After that, you can also run
metricbeat setup
that sets up the initial environment.
Let me know if this helps or you've already done this and you still don't see any data.
Thanks for response.
I am not sure about exact error:
I am getting 2 different error by running two different command as below
journalctl -xe | grep 'metricbeat'
Error fetching data for metricset oracle.tablespace: error creating connection to Oracle: error doing ping to database: ORA-00000: DPI-1047: Cannot locate a 64-bit Oracle Client library: "libclntsh.so: cannot open shared object file: No such file or directory".
metricbeat test modules oracle
tablespace...
error... ERROR error getting or interpreting data from Oracle: error extracting data: error getting data_files: error executing query: dpiStmt_execute: ORA-00942: table or view does not exist
performance...
error... ERROR error extracting data: error getting buffer cache hit ratio: error executing query: dpiStmt_execute: ORA-00942: table or view does not exist
can you please explain why there is difference.
Thanks and regards,
Mrunalini
Hi
@Mario_Castro
,
My oracle version is 12c.
I have installed oracle instant client - instantclient-basic-linux.x64-21.1
My Os where metric-beat installed is RHEL Linux 7.3
we have below oracle module configured:
module: oracle
metricsets: ["tablespace", "performance"]
enabled: true
period: 10s
hosts: ["oracle://host:IP/Servicename"]
username: "User"
password: "pass"
Please let me know what else is missing ?
Thanks.
Ok so your Oracle version seems to be supported, good
You instant client might be too updated and I'd try with v18.5 which is the tested version. I think I have manualled tested v19 too but check, just in case.
This looks like some error setting up the environment
Cannot locate a 64-bit Oracle Client library: "libclntsh.so: cannot open shared object file: No such file or directory
Follow closely the instructions
here
(including setting up the
LD_LIBRARY_PATH
envar) and check the permissions for each metricset
here
and
here
.
Thanks for reply !!
Sure i will try changic oracle client.
But , As mentioned on Elastic official page ,does my user need to have access to below tables connect metrics:
V$BUFFER_POOL_STATISTICS
v$sesstat
v$statname
v$session
v$sysstat
V$LIBRARYCACHE
SYS.DBA_TEMP_FILES
DBA_TEMP_FREE_SPACE
dba_data_files
dba_free_space
As this are system table my user does not have this access
so is this can be problem?
Thanks and regards ,
mrunalini
Hi @Mario_Castro ,
I installed OCI 18.5 version on my system,still getting same error ,below is my Environment variable value:
$LD_LIBRARY_PATH - /usr/lib/instantclient_18_5
Can you please help me find the issue here.
Thanks and regards,
Mrunalini Sinnarkar
Hi @mrunalini
Assuming you are using systemctl
it will not pick up that environment variable.
See here
You need to add a drop in conf like described in the documents above or add it using the method below using systemctl
edit
systemctl edit metricbeat.service
[Service]
# Client Env Vars
Environment=ORACLE_HOME=/path/to/oracle
You might need to add ORACLE_HOME and / or LD_LIBRARY_PATH
These processes are not uncommon for system services
or you can do following
vi /etc/ld.so.conf.d/*
add following line in end. ( I have 1.2 client and proper path, this is my example, you do your path)
/usr/lib/oracle/12.2/client64/lib/
Then run ldconfig
Hi @stephenb ,
I think the solution u suggested has worked .
But our User seems to not having access to system table that's we are facing :"Table or view does not exist."
I wanted to ask Does oracle metricset configured for "Username/Password " expiry alert.
We need to set alerts for password expiry of users from Oracle DB ,is it possible?
Please help with above requirement.
that username/password is on oracle side. ELK has nothing to do with it. and no there is no alert for that. you can tackle this two way.
from oracle side write bash script to find out if username is locked or expire
from ELK side check the count of document in last X minute and if they are zero then alert because that means your logstash which is ingesting data is not working.