I'd wouldn't use green and red into that fashion, because red tends to portray the feeling that whatever it's logged it has gone wrong. I'd use something like this instead:

download bmml source – Wireframes created with Balsamiq Mockups
for inputs

download bmml source
for outputs
The arrow pointing in an out of the icon indicates I/O tasks. (The icon could also be a database or any other object that make sense for your application).
You can add color to the arrows (green and red) and this way the "bad feeling" about a red row might change a bit (and your application will look cleaner; look that I didn't use an alarming red).
Bonus:
Try to group rows by similar events or by dates, collapse all and try to keep the most recent events expanded. This helps not displaying a huge lot of information upfront, if the user is looking for something that happened just now he might be able to look in the expanded rows, if s/he's looking for old data, s/he might be able to navigate to it easier without scrolling much.
This is pretty much the way SE does it and I find it pretty comfortable.

download bmml source
Hope this helps :)