Not signed in (Sign In)

Vanilla 1.1.4 is a product of Lussumo. More Information: Documentation, Community Support.

    • CommentAuthordj.dill
    • CommentTimeDec 2nd 2009 edited
     
    Hi Axel,

    I am not sure if this project is still being supported but the new version of SpeedFan (4.40) appears not to refresh the SNMP values

    SO: XP SP3
    Speedfan: 4.40

    Great product btw :)

    Thanks

    Dj Dill
    • CommentAuthorklavo
    • CommentTimeJan 8th 2010
     
    I'm using SpeedFan 4.40 and sfsnmp-0.1.0 and I'm not able to get any snmp data from .1.3.6.1.4.1.16, I have tried it from windows 7 and Windows 2008 R2 Server.
    • CommentAuthormprouil
    • CommentTimeApr 7th 2010
     
    Hi,
    I could not make the stuff work too. SpeedFan Reports the values i need, i can walk or request SNMP on my window Host, but i can't find any trace of the output OIDs...
    I had an error about restarting the SNMP service during installation of sfsnmp, and i can't find any trace of sfsnmp once the installer has finished. Is this an installation issue, or a software bug ? thanks for helping.
    • CommentAuthorgregorv
    • CommentTimeApr 10th 2010
     
    same here.
    snmpsnap returns no value with snmpwalk or check_sfan on Windows 7 64Bit.
    The functions return immediately (no timeout e.g.) but the result is simply empty.
    check_sfan returns:Received genError(5) error-status at error-index 1

    On a XP and a WIN2003 machine it works fine (both 32Bit).
    Any hints appreciated
    Thanks
    Gregor
    • CommentAuthorAgo
    • CommentTimeMay 20th 2010 edited
     
    Could someone that is affected by the problem please check this file and report if it prints correct values (it is a console application, so run in cmd.exe):

    http://static.loping.net/temp/SFSHMTest.exe

    This exe works for me with SpeedFan 4.40. I will release a new SFSNMP soon, with a CMake build system.
    • CommentAuthorAgo
    • CommentTimeMay 21st 2010 edited
     
    You can check if this is an installer issue. The installer should create these registry keys:

    "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SNMP\Parameters\ExtensionAgents\23483"
    or
    "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents\23483"

    which should contain "SOFTWARE\Bastart\SFSNMP\CurrentVersion". It should also create this registry key:

    "HKEY_LOCAL_MACHINE\SOFTWARE\Bastart\SFSNMP\CurrentVersion\Pathname"

    Which should contain the path to the sfsnmp.dll file. Check that the file exists, too.

    Also check for the DLL using Process Explorer. Choose "Find | Find Handle or DLL...", enter sfsnmp and hit Search. There should be a SNMP.EXE in the list.
  1.  
    Hi

    I can't get any values from snmp.

    http://static.loping.net/temp/SFSHMTest.exe works ok, output is:
    Version: 1
    Flags: 0x0001
    Memory size: 402 bytes
    Handle: 0x000A0298
    --------------------------------------------------
    Number of temperatures: 5
    Temperature #01: 0.12 °C
    Temperature #02: 0.12 °C
    Temperature #03: 0.12 °C
    Temperature #04: 28.00 °C
    Temperature #05: 25.00 °C
    --------------------------------------------------
    Number of fan speeds: 0
    --------------------------------------------------
    Number of voltages: 0


    The registry keys are all created. The installer I used is:
    http://deve.loping.net/svn/sfsnmp/trunk/installer/sfsnmp_installer.msi
    • CommentAuthorAgo
    • CommentTimeJun 1st 2010
     
    It seems that the problem is on SpeedFans end. This is the bug report about it:

    http://www.bugtrack.almico.com/bug_view_advanced_page.php?bug_id=1275

    There is also ongoing discussion about it on the cacti forums:

    http://forums.cacti.net/about23476-60.html

    If Alfredo doesn't fix this soon, I will release a patch that corrects the problem in SpeedFan.
    • CommentAuthorAgo
    • CommentTimeJun 1st 2010
     
    BTW, while the installer you used should work, it is not tested, and is not the same as the last beta I posted. But seeing that it works for you, I'm much more confident about it :)
  2.  
    Hi,

    Only SFSHMTest.exe works.

    The snmp part doesn't.

    I'll be watching the bug report.

    Thank you
    • CommentAuthorrfc
    • CommentTimeJun 10th 2010
     
    Hello Ago,

    I can confirm the same problem life.emotions reports. I'm running SpeedFan 4.40 and installed the latest sfsnmp from the downloads. SFSHMTest.exe works, but walking the OIDs found nothing new. I dug through the source, enabled the Logfile and found this:

    ERROR: Agent: SnmpExtensionQueryEx: Failed to get SpeedFan SHM, returning "Resource unavailable"!

    Seems it stems from the same SHM problem ...

    Weird that the SpeedFan author future-though about supporting this but didn't care since a long time about the problems users running into it.

    Would be great if you could release something to get it working.
    • CommentAuthorrfc
    • CommentTimeJun 10th 2010
     
    Moment .. I've a question, Ago: going through your SVN history I saw you did some fixed about the SHM thing in midst of 2009, but the downloaded binary from http://deve.loping.net/projects/sfsnmp/download/7 dates back to 01.02.2008 (at least from my installation within C:\Windows\SysWOW64 , I'm running on W7 Pro 64bit).

    Is it possible that you just haven't updated the binaries?

    thanks
    • CommentAuthorrfc
    • CommentTimeJun 10th 2010
     
    I took the latest downloadable source archive and compiled it myself with VS 2010. The source was the one *not* containing the Global\ statement. I added it, but the SHM file still couldn't be accessed :-/ Guess we've to wait for SpeedFan supporting it or your proposed fix.
    • CommentAuthorAgo
    • CommentTimeJun 14th 2010
     
    Hey, sorry I wasn't able to respond the last days.

    The version in SVN is definitely not the version that is downloadable. The "Global\"-fix is in trunk, but there is no fix in SpeedFan yet.

    Today I committed 2 new subprojects to SFSHM, one DLL that reshares the SpeedFan SHM globally, and one that injects the DLL into SpeedFan. This should fix the issues.

    I am still not finished with the new installer, but that should not be too long.
    • CommentAuthorAgo
    • CommentTimeJun 14th 2010
     
    For those interested, here are the source files.

    This one contains the actual proxy, which tries to attach to SpeedFans SHM and copies it to a global SHM every 500ms:

    http://deve.loping.net/svn/sfsnmp/trunk/projects/sfproxy/sfproxy.cpp

    And this one injects the DLL built from the first file into SpeedFan using CreateRemoteThread:

    http://deve.loping.net/svn/sfsnmp/trunk/projects/injector/injector.cpp

    Also, I switched the project to CMake. It allows building with most VC++ compilers, and it should be buildable with other compilers as well, or at least easier.
    • CommentAuthorrfc
    • CommentTimeJun 19th 2010
     
    Hi,

    I checked out trunk and was able to compile the binaries with cmake and the VS 2010 express edition compiler.

    Since there's no installer yet I'm wondering how to properly set this up? I tried this so far without success:

    * Created HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Bastart\SFSNMP\CurrentVersion with the following entries:
    * Pathname pointing to the dll binary -> C:\Users\rfc\src\sfsnmp\bin\SFSNMPDLL_d.dll
    * DebugFile to get some debug logs

    * Created HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SNMP\Parameters\ExtensionAgents\23486 with value SOFTWARE\Wow6432Node\Bastart\SFSNMP\CurrentVersion

    * Stopped the SNMP service

    * Changed into C:\Users\rfc\src\sfsnmp\bin and ran: Injector.exe "C:\Program Files (x86)\SpeedFan\speedfan.exe" . SpeedFan did start up.

    * Started the SNMP service

    In the logfile I see this:

    INFO: DLL: Process attaching to the agent, reference count 1...
    INFO: DLL: Process detaching from the agent, reference count 0...
    INFO: DLL: Reference count is 0, destroying SHM vector...

    Using snmpwalk from a remove machine does not show me any new OIDs:

    $ snmpwalk -v 1 -c public -On windows | grep 1.3.6.1.4.1
    .1.3.6.1.2.1.1.2.0 = OID: .1.3.6.1.4.1.311.1.1.3.1.1
    $

    thx
    • CommentAuthorAgo
    • CommentTimeJun 21st 2010 edited
     
    I just commited a debug fix for sfproxy. I accidentally checked for ifdef DEBUG instead of _DEBUG.
    When you recompile sfproxy in debug mode with the latest trunk, SpeedFan should spawn a console window with debug information.
    I need to know whether the console window is created, and if it is I need the output of that window.

    Also, please check whether sfsnmp is loaded into snmp.exe using either process explorer or this command:
    tasklist /m sfsnmp*
    From your log it looks like the SNMP service unloaded the dll (refcount 0)
    • CommentAuthorAgo
    • CommentTimeJun 21st 2010 edited
     
    BTW, the OID you are querying isn't correct anymore. I registered my own SNMP PEN for Bastart.
    The new OID base is .1.3.6.1.4.1.30503
    • CommentAuthorAgo
    • CommentTimeJun 21st 2010
     
    Argh, heres the problem:

    Z:\>dumpbin /exports p:\src\sfsnmp\build\bin\debug\SFSNMPDLL_d.dll
    Microsoft (R) COFF/PE Dumper Version 8.00.50727.762
    Copyright (C) Microsoft Corporation. All rights reserved.

    Dump of file p:\src\sfsnmp\build\bin\debug\SFSNMPDLL_d.dll

    File Type: DLL

    Summary

    1000 .data
    1000 .idata
    4000 .rdata
    1000 .reloc
    1000 .rsrc
    D000 .text

    NO EXPORTS!!! :) This is a leftover from the CMake switch. I personally tested using my precompiled binaries, which have the exports.
    • CommentAuthorAgo
    • CommentTimeJun 21st 2010
     
    Fixed in trunk. Although this somehow does not work:

    snmpwalk -v2c -c public -On 10.2.0.55 | grep 1.3.6.1.4.1.30503

    But it works with this:

    snmpwalk -v2c -c public -On 10.2.0.55 1.3.6.1.4.1.30503
    • CommentAuthorrfc
    • CommentTimeJun 21st 2010
     
    Hi,

    I updated from SVN, recompiled everything (nmake clean to be sure). I do *not* get the console when running the injector; SpeedFan just starts up without (?). I made double sure it's the debug build (i.e. putting invalid code into the define and nmake failed).

    However it now seems snmpd is properly loading the library:

    INFO: DLL: Process attaching to the agent, reference count 1...
    INFO: Agent: SnmpExtensionInit called...
    INFO: Agent: SnmpExtensionQueryEx called...
    ERROR: Agent: SnmpExtensionQueryEx: Failed to get SpeedFan SHM, returning "Resource unavailable"!

    OTOH, with either Process Explorer or your suggested command line I was not able to very snmp.exe has loaded sfsnmp actually. The command line gives me:

    C:\Users\rfc>tasklist /m sfsnmp*
    INFORMATION: Es werden keine Aufgaben mit den angegebenen Kriterien ausgeführt.

    (probably means: no tasks found matching your criteria)

    This is the output of snmpwalk, not surprising given that the logfile alsredy shows the error:

    vserv02:~# snmpwalk -v2c -c public -On rage 1.3.6.1.4.1.30503
    .1.3.6.1.4.1.30503 = No more variables left in this MIB View (It is past the end of the MIB tree)

    thanks!
    • CommentAuthorAgo
    • CommentTimeJun 22nd 2010
     
    Ok, I was able to reproduce it. The problem is that the injector does not inject the right dll. Change this line in sfproxy to point to the real path:

    char *dll = "SFProxy.dll";

    like

    char *dll = "G:\\dev\\sfsnmp\\build\\bin\\Debug\\SFProxy_d.dll";

    I'll need path detection for this.
    • CommentAuthorAgo
    • CommentTimeJun 22nd 2010
     
    BTW, tasklist seems to only work for 64-bit processes on 64bit windows. Process explorer shows the dll loaded though
    • CommentAuthorAgo
    • CommentTimeJun 22nd 2010
     
    Also, German is my native language, although it is probably good to keep this english because the sites primary audience is english.
    • CommentAuthorrfc
    • CommentTimeJun 23rd 2010
     
    Ach the path, lol. Didn't realized that either. Yes, with the proper path the Console and SpeedFan is spawned.

    The output in the console is always this three lines, repeating as long as I run SpeedFan:

    Trying to open local SpeedFan SHM...
    Trying to create global SpeedFan SHM...
    Failed to create the global SpeedFan SHM!

    Needless to say I don't get anything from snmpwalk and the sfsnmp.log still says

    ERROR: Agent: SnmpExtensionQueryEx: Failed to get SpeedFan SHM, returning "Resource unavailable"!

    No problem with English though German is my native too.
    • CommentAuthorrfc
    • CommentTimeJun 23rd 2010
     
    I figured I can call GetLastError() in that case which returns "5" which according to http://msdn.microsoft.com/en-us/library/ms681382%28v=VS.85%29.aspx is "Access is denied". Hmm ...
    • CommentAuthorAgo
    • CommentTimeJun 23rd 2010
     
    You need to run with elevated privileges (Run As Administrator in context menu) or disable UAC to be able to register a global SHM.
    I need to figure out how to request elevated privileges from the code.
    • CommentAuthorrfc
    • CommentTimeJun 23rd 2010
     
    Hi,

    yes, that works. I'm now getting values with this command:

    snmpwalk -v2c -c public -On <ip> 1.3.6.1.4.1.30503

    I'm having to more questions:

    1) Do you've an idea why the values don't show up when just running snmpwalk without any starting OID?

    2) Is there a way to also retrieve the labels/names for the unites being monitored (e.g. fan1, cpu0, etc.) ? I'm only getting values which look like RPMs or temperatures, but no descriptions.

    thanks!
    • CommentAuthorAgo
    • CommentTimeJun 24th 2010 edited
     
    1) I think this is a problem with the windows SNMP API, I'm definitely doing everything as it is supposed to be. I also tried to implement the other functions of the SNMP API, but still nothing. From SnmpExtensionInit I also tried to return the OID base, the first OID and the preceding OID, none worked. There isn't even a call to any other function than SnmpExtensionInit when you walk the global tree. I disassembled some of the microsoft SNMP extensions, and it seems they call the SnmpTfx* APIs, maybe that is the key, but I have to do some more research.

    2) The information isn't in the SpeedFan SHM, so either Alfredo would have to extend the SHM format to include the information, or I'd somehow have to read the SpeedFan configuration files. I think the latter is the more realistic approach :)
    • CommentAuthorAgo
    • CommentTimeJun 24th 2010
     
    Hmm, this forum needs email notification :\
    • CommentAuthorrfc
    • CommentTimeJun 24th 2010
     
    Today I started my computer and now I don't get the values via snmp anymore.

    I start the injector as Administrator and he writes "Pumping data..." but only once and *not* continuously.

    On the snmpwalk side I only receive these values:

    .1.3.6.1.4.1.30503.1.1.1 = INTEGER: 0
    .1.3.6.1.4.1.30503.1.1.2 = INTEGER: 0
    .1.3.6.1.4.1.30503.1.1.3 = INTEGER: 0

    First I thought I started snmpwalk too early (because SF needs some time detecting all the devices), but after I stopped SF and started it again via the injector and waited until everything was initialized, I still get these values now.

    I didn't touch the sources, I only restarted my computer in between. The SNMP service and the snmp dll seem to work fine, DebugFile just looks normal:

    INFO: Agent: SnmpExtensionQueryEx called...

    (numerous times)

    Any idea what that might be?

    Ps: I agree about the email notification, would be very helpful.
    • CommentAuthortom
    • CommentTimeJul 2nd 2010
     
    I'm at a bit of a loss as well. I'm on Win 7 Ultimate x64.

    I used the installer in trunk/ and the dll loads but then seems to get unloaded:

    INFO: DLL: Process attaching to the agent, reference count 1...
    INFO: DLL: Process detaching from the agent, reference count 0...
    INFO: DLL: Reference count is 0, destroying SHM vector...

    I'm trying to build it like rfc, but I don't have the right setup. I ran cmake under cygwin, which was fine, and after that make, with the following output:

    $ make
    [ 20%] Built target SFSHM
    Scanning dependencies of target SFSHMTest
    [ 40%] Built target SFSHMTest
    Scanning dependencies of target SFSNMPDLL
    [ 60%] Building CXX object projects/sfsnmp/CMakeFiles/SFSNMPDLL.dir/sfsnmp.cpp.o

    /cygdrive/d/progs/speedfan-plugin/trunk/projects/sfsnmp/sfsnmp.cpp: In function `void SFSNMP::LogToFile(const char*, ...)':
    /cygdrive/d/progs/speedfan-plugin/trunk/projects/sfsnmp/sfsnmp.cpp:75: error: `FILE' was not declared in this scope
    --snip--

    I imagine it's cause I'm not using the same build enviroment. I installed the latest SDK (following the links from the one in the readme_src, and I have version 7.0: Microsoft Windows SDK for Windows 7 (7.0.7600.16385.40715)
    The Build Enviroment that it provides does not have a cmake or make

    If the crux of it is the dll, could one of you post a nightly of it I could drop in place of the current one?
    • CommentAuthorAgo
    • CommentTimeNov 18th 2010
     
    http://deve.loping.net/svn/sfsnmp/trunk/installer/sfsnmp_installer.msi

    Could you please try this version ? It installs an Injector.exe into the SpeedFan directory which you have to use to start it.
    Will be releasing it shortly.

    - Axel
    • CommentAuthorschuc
    • CommentTimeMay 4th 2012
     
    I see that both
    - http://static.loping.net/temp/SFSHMTest.exe and
    - http://deve.loping.net/svn/sfsnmp/trunk/installer/sfsnmp_installer.msi

    are both not good links at this time. Is this still an active effort? I started recently trying to get Cpu/disk/mobo temps being monitored and boy what a road I have been down trying to get a generic solution going. I didn't realize up front that it would be so tricky, but it really seems like the Speedfan + sfsnmp combination will work best if I could get a copy working.

    Any update or feedback is much appreciated. Thanks for all the work you have done on this already!