添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

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 :grinning_face_with_smiling_eyes: 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.