Jump to content
fred41

Arma Server Monitor (very small, but useful)

Recommended Posts

= Memphis007;2557407']Ok' date=' new binary works as expected, i was able to connect two clients on the server (didn't check if third is rejected). Thanks for your work.[/quote']

... nice, thanks for test and report too ... :)

@tankbuster, i did an virus scan (offline, boot from pressed security DVD, 4 different updated scanners) and the result is negative.

Greets,

Fred41

Share this post


Link to post
Share on other sites

I'm not suggesting for a minute you'd make an excellent tool like this that works and then laden it with a virus halfway through it's development. :) I just can't install it without major heartache of pursuading Windows.

Share this post


Link to post
Share on other sites

I've got 3 different clients from 3 different IPs working now. Have to batter Avast into submission first, but after that, it's excellent.

Now, Fred, make an Android client! :)

Share this post


Link to post
Share on other sites
Now, Fred, make an Android client! :)

... there is already a very long queue for OS's, ASM should support, but at first place is IOS, because my son requested it months ago for his iPod :D

Share this post


Link to post
Share on other sites

Hey guys,

Awesome stuff Fred! I've been playing around with this. I tweaked the FSM and had it call my own callExtension addon that talks HTTP/JSON (rather than your dll). So i've got it sending data to a cloud based DB. I've got it reporting every 1 minute or so, depending on metric.

Qo7VunK.jpg

Not really stress tested this yet, but wondering if its ok to use your FSM as part of something I'm working on?

Share this post


Link to post
Share on other sites
... but wondering if its ok to use your FSM as part of something I'm working on?

... it's not only "ok", i am really more than happy, that someone is brave enough and able, to interface with this stuff at lowest level :)

I will publish the source of the ASMdll.dll on github soon, maybe you can use some of this code for your project too.

BTW: Your screenshot looks very promising :)

Greets,

Fred41

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

EDIT: Source of ASMdll.dll published on github (just a few lines). Everybody is free to use it, maybe as start for own projects or just as example, how to use callExtension in a simple and fast way.

Edited by Fred41

Share this post


Link to post
Share on other sites

UPDATE:

ASM now records up to 24h (86400 seconds) to RAM (ringbuffer).

History is now scrollable (+/- time offset) via LMB. Time offset reset to zero via double click.

Timedivisor selectable via popupmenu as usual.

Edited by Fred41

Share this post


Link to post
Share on other sites

Fred, could you implement an optional log output (export to txt, or csv) with timestamp? This way we could pinpoint newtwork problems, and can find out if there is something wrong with the configuration, or the misssion is badly scripted.

I will be grateful for any help you can provide.

Share this post


Link to post
Share on other sites

weird bug in this new version, i restarted 2nd server, now it's active only in 3rd monitor and refuses to use 2nd even if ASM restarted

Share this post


Link to post
Share on other sites
Fred, could you implement an optional log output (export to txt, or csv) with timestamp? This way we could pinpoint newtwork problems, and can find out if there is something wrong with the configuration, or the misssion is badly scripted.

I will be grateful for any help you can provide.

@kelemenlajos, this is already planned. I will add this soon ...

---------- Post added at 18:54 ---------- Previous post was at 18:50 ----------

weird bug in this new version, i restarted 2nd server, now it's active only in 3rd monitor and refuses to use 2nd even if ASM restarted

@dwarden, thanks for your report.

This is an old bug, which occure if your arma server terminates abnormal (crashes) and DLL_PROCESS_DETACH isn't called. I think this should be fixable ...

---------- Post added at 20:35 ---------- Previous post was at 18:54 ----------

UPDATE:

06.12.2013: simple log feature added (-lfilenameprefix, -tinterval)

This logfile(s) will be generated in ASMs workdirectory and are written each interval seconds (default 1).

There is no header in this files, the fields are delimited by a '|'.

The order of values is the following:

TimeStamp|FPS|CPS|PL#|AIL|AIR

Enjoy :)

Share this post


Link to post
Share on other sites

Very nice tool Fred!

Possible to add:

# incoming and outgoing traffic

# number of dead bodies

# number of vehicles

# number of weaponholder (Library_WeaponHolder, WeaponHolder, WeaponHolder_Single_F, ContainerSupply (isKindOf), GroundWeaponHolder, WeaponHolderSimulated, WeaponHolder_Single_limited_weapon_F, WeaponHolder_Single_limited_magazine_F)

These might help narrowing down the MP performance issues.

Thanks a lot!

Share this post


Link to post
Share on other sites

minor update:

object counter (OBJ) added to log file output, only appended if objectcounting is activated via asm.ini.

The order of values is the following now:

TimeStamp|FPS|CPS|PL#|AIL|AIR|[OBJ]

@.kju, this little update should help a bit to show the impact of object numbers to performance and to verify the efficiency of cleanup.

I think a more detailed analysing, what object are causing a possible accumulation of objects, should be still done via script in mission (during mission development).

Monitoring/logging the networktraffic values would be very helpful, but is still very difficult to implement.

I really hope that BIS will add some script commands, to interface with this important engine values (whitout to login as admin ingame and to run ASM as admin).

Edited by Fred41

Share this post


Link to post
Share on other sites

FIX:

08.12.2013 fix: instance slot blocked, caused by arma server crash (full update required)

Share this post


Link to post
Share on other sites

something is broken completely in this new version of ASM , nearly values are inert or wrong only AIR keeps increasing (already on 16k on one server and 36k on another)

Share this post


Link to post
Share on other sites
something is broken completely in this new version of ASM , nearly values are inert or wrong only AIR keeps increasing (already on 16k on one server and 36k on another)

... thanks for your report ...

Perhaps you didn't updated all files (see changelog and readme.md, hint: ASMdll.dll can only be overwritten while arma is not running)?

Share this post


Link to post
Share on other sites
... thanks for your report ...

Perhaps you didn't updated all files (see changelog and readme.md, hint: ASMdll.dll can only be overwritten while arma is not running)?

was some issue with cached data on the github ... later download got me finally updated file

Share this post


Link to post
Share on other sites

Can anyone explain the difference between fps and fpsmin.

And what would it mean if 1 servers fpsmin has a very low base line while another server running the same mission has a very high fpsmin base line.

Thanks in advance.

BL1P

PS. could you give the ability to enlarge the monitor box please my servers screen is tiny and i would like to be able to read it + I am old and cant see very well :)

Edited by BL1P

Share this post


Link to post
Share on other sites

@BL1P,

good to know i am not the only old one here -O^O- :D

FPS is the average FPS of the last 16 cycles/frames, FPSmin is the FPS minimum of the last 16 cycles/frames.

Internal commands used are: diag_fps and diag_fpsmin, sampled each second.

The very low FPSmin baseline on your server means, that there are probably some periodical lags/stutters on this instance.

This is not nessecary a problem on server, but it make sense to investigate it.

@Revolutor, i answered your PM :)

Share this post


Link to post
Share on other sites

Thanks Fred41.

Because of your monitor we found out that two other server instances of another game were eating up too much cpu time and or memory.

Closing them fixed the low base line on the FPSmin. :)

Now just need something that will explain why we shut down someone else`s sever instances to other members of the community I am in :)

I think the our game rocks your game sucks policy is what we will go with !

Share this post


Link to post
Share on other sites

UPDATE:

13.12.2013 three **customizable object counter** added (set interval and .sqf command in asm.ini)

Three customizable object counters added. Counting interval and .sqf commands for each counter are configured in asm.ini.

The graphical display for this three values is currently scaled to max=1000. The value field can show much higher values.

For detailed usage instructions, please read the readme.md.

Please report bugs/issues, ether here, or in my github repo.

BTW: You can not only count objects, but use any .sqf code which return a number value.

Share this post


Link to post
Share on other sites

nice :) now all you need is increase these 3 custom fields to like 10 ;)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×