You give the step a name in the addStep method for example:
f = buildbot.process.factory.BuildFactory()
f.addStep(buildbot.steps.shell.ShellCommand((name = 'Hello',
cmd = ['echo', 'Hello World']))
I'd implement the second part as a log observer