Skip to main content
GameDev.net gamedev.net
🔒 Locked 🎮 Unity

Remote logging

Started by Thrump Jul 19, 2009 at 12:30 PM 6 replies 1.3k views
Original Post
Thrump
Thrump
I'm interesting in developing a remote logging application. The game you're interested in logging would send messages to this application (through tcp/ip), and you could view the results using tabbed viewing (or whatever else I decide). The value of this over log files isn't much, but you could use this to graph values changing over time, log data in it's natural format to do things like compare them (the distance between 2 Vector3's), draw an overhead map with the location of game entities, etc... Before I start this, does anybody know of anything that does this already?
ScottMayo
ScottMayo
Well, SNMP, kind of, but that's probably not ideal for games.

This sort of package comes in useful when you have hardware without a dedicated disk onboard, or when you don't dare go to disk because you're a hard realtime system and you have secret knowledge that allows you to know that the network is always going to be a faster, more time-predictable data sink than any disk.

In other words, it's an unusual case to put it mildly, but I've come across it once or twice in hard real time systems with unusual hardware requirements. Unless you're in that situation, you need to ask yourself what's wrong with opening a file and writing. You can generally have a second process reading from the same file simultaneously, to display information as it happens, if you need such a thing. And a file can be looked over after the fact.
Thrump
Thrump
I could use files instead of tcp/ip as a communication method. AFAIK the hardware I'm working on has very slow file reading/writing (it has no local storage). But speedwise I'd need to test.

The thing I'm most interested in is the application that would read, interpret and display the information in more powerful ways than log files. The communication method (ie remoteness) is a secondary concern.
Atrix256
Atrix256
Well you could spit out csv files and then use excel to massage / display your data in meaningful ways.

you could also spit out xml (not sure what graphing / analasys tools are out there for xml data)

you could also spit it out in an SQL style format and then toss it into a database (ie "insert into blah....") to use it with crystal reports or some such :P
ScottMayo
ScottMayo
Quote:
Original post by Atrix256
you could also spit it out in an SQL style format and then toss it into a database (ie "insert into blah....") to use it with crystal reports or some such :P


There's something to be said for that. There's all your networking done for you, and there's more analysis and graphing packages for databases than anyone needs. It's not precisely lightweight, though.
swiftcoder
swiftcoder
Quote:
Original post by ScottMayo
In other words, it's an unusual case to put it mildly...
Au contraire - tracking down issues with fullscreen mode is hell without a way to both log, debug *and* profile remotely. Thankfully, major IDEs (Visual Studio, XCode) and tools (AMD PerfStudio) offer remote debugging/monitoring out of the box.

As for logging, I generally just have my application log to a directory accessible to the local apache instance, and load the log files in a browser on the second machine.
Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]
Thrump
Thrump
Those are some good suggestions. I'm going to think about some of those approaches. Thanks.
Atrix256
Atrix256
Quote:
Original post by ScottMayo
Quote:
Original post by Atrix256
you could also spit it out in an SQL style format and then toss it into a database (ie "insert into blah....") to use it with crystal reports or some such :P


There's something to be said for that. There's all your networking done for you, and there's more analysis and graphing packages for databases than anyone needs. It's not precisely lightweight, though.



Well i was thinking specifically just make a text file with a bunch of insert statements for the data, then load that into a DB at a later time and then do your "DB magic" on the data.

That would be to keep it light weight, but yeah your thinking of actually having it log to an actual DB, that is a decent option too but like you say is less light weight!

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.