Usuário com melhor resposta
Como criar um log de ações no sistema e gravar num arquivo txt

Pergunta
-
Olá, estou desenvolvendo meu tcc e queria implementar o registro de ações do usuário num arquivo txt.
Eu não faço ideia de como fazer isso, mas acho que o evento de gravar no arquivo txt vai ficar nos botões depois dos eventos dos mesmos.
Ou até no evento load do form, gravando qual form o usuário abriu..Queria saber como trabalhar com isso..
Desde já, agradeço!
Respostas
-
Tem uma solução simples:
Public NotInheritable Class Log Private Sub New() End Sub Public Shared Sub LogEntry(usuario As [String], evento As [String]) Dim mensagem As [String] = [String].Format("{0} - O usuário {1} {2}", DateTime.Now, usuario, evento) File.AppendAllLines("E:\Log.txt", New [String]() {mensagem}) End Sub End Class
Depois pode adicioar nos seus eventos, algo assim:
NO load do seu form, por ex.:
Log.LogEntry("UsuarioX","Abriu o formulário Y")
- Sugerido como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 16:36
- Marcado como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 17:38
-
Eu utilizo esta função que criei para registrar logs, você pode colocar no evento que deseja passando uma string como parâmetro.
Public Shared Function Debug(Valor As String) As Boolean 'Diretorio onde sera criado o arquivo de log Dim path As String = ((Application.StartupPath + "/Erro " + DateTime.Now.Year & "") + DateTime.Now.Month & "") + DateTime.Now.Day & ".log" Try 'cria o arquivo com a nomenclatura Erro +Data que ocorreu If Not System.IO.File.Exists(path) Then Using sw As System.IO.StreamWriter = System.IO.File.CreateText(path) sw.WriteLine("[" & DateTime.Now.ToString() & "] " & Valor) End Using Return True Else Using sw As System.IO.StreamWriter = System.IO.File.AppendText(path) sw.WriteLine("[" & DateTime.Now.ToString() & "] " & Valor) End Using Return True End If Catch e As Exception 'Caso ocorra algum erro ao criar o arquivo de log Using sw As System.IO.StreamWriter = System.IO.File.AppendText(path) Throw New Exception("Erro ao criar o arquivo de log") End Using Return False End Try End Function
Se te ajudou marca como resposta
- Sugerido como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 16:36
- Marcado como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 17:38
Todas as Respostas
-
Tem uma solução simples:
Public NotInheritable Class Log Private Sub New() End Sub Public Shared Sub LogEntry(usuario As [String], evento As [String]) Dim mensagem As [String] = [String].Format("{0} - O usuário {1} {2}", DateTime.Now, usuario, evento) File.AppendAllLines("E:\Log.txt", New [String]() {mensagem}) End Sub End Class
Depois pode adicioar nos seus eventos, algo assim:
NO load do seu form, por ex.:
Log.LogEntry("UsuarioX","Abriu o formulário Y")
- Sugerido como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 16:36
- Marcado como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 17:38
-
Eu utilizo esta função que criei para registrar logs, você pode colocar no evento que deseja passando uma string como parâmetro.
Public Shared Function Debug(Valor As String) As Boolean 'Diretorio onde sera criado o arquivo de log Dim path As String = ((Application.StartupPath + "/Erro " + DateTime.Now.Year & "") + DateTime.Now.Month & "") + DateTime.Now.Day & ".log" Try 'cria o arquivo com a nomenclatura Erro +Data que ocorreu If Not System.IO.File.Exists(path) Then Using sw As System.IO.StreamWriter = System.IO.File.CreateText(path) sw.WriteLine("[" & DateTime.Now.ToString() & "] " & Valor) End Using Return True Else Using sw As System.IO.StreamWriter = System.IO.File.AppendText(path) sw.WriteLine("[" & DateTime.Now.ToString() & "] " & Valor) End Using Return True End If Catch e As Exception 'Caso ocorra algum erro ao criar o arquivo de log Using sw As System.IO.StreamWriter = System.IO.File.AppendText(path) Throw New Exception("Erro ao criar o arquivo de log") End Using Return False End Try End Function
Se te ajudou marca como resposta
- Sugerido como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 16:36
- Marcado como Resposta Ricardo Barbosa Cortes quarta-feira, 29 de outubro de 2014 17:38