Added CLI "debug packet 0..255" to enable the in/out packet dumps with various verbosity
parent
23b8e39c1b
commit
1703cacaab
|
@ -240,5 +240,6 @@ namespace OpenSim.Framework.Interfaces
|
||||||
|
|
||||||
void SendViewerTime(int phase);
|
void SendViewerTime(int phase);
|
||||||
void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID);
|
void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID);
|
||||||
|
void SetDebug(int newDebug);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -166,6 +166,7 @@ namespace OpenSim.Framework
|
||||||
|
|
||||||
public void SendViewerTime(int phase) { }
|
public void SendViewerTime(int phase) { }
|
||||||
public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID) { }
|
public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID) { }
|
||||||
|
public void SetDebug(int newDebug) { }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -380,11 +380,20 @@ namespace OpenSim
|
||||||
{
|
{
|
||||||
switch (command)
|
switch (command)
|
||||||
{
|
{
|
||||||
|
case "debug":
|
||||||
|
if (cmdparams.Length > 0)
|
||||||
|
{
|
||||||
|
Debug(cmdparams);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case "help":
|
case "help":
|
||||||
m_log.Error("alert - send alert to a designated user or all users.");
|
m_log.Error("alert - send alert to a designated user or all users.");
|
||||||
m_log.Error(" alert [First] [Last] [Message] - send an alert to a user. Case sensitive.");
|
m_log.Error(" alert [First] [Last] [Message] - send an alert to a user. Case sensitive.");
|
||||||
m_log.Error(" alert general [Message] - send an alert to all users.");
|
m_log.Error(" alert general [Message] - send an alert to all users.");
|
||||||
m_log.Error("backup - trigger a simulator backup");
|
m_log.Error("backup - trigger a simulator backup");
|
||||||
|
m_log.Error("debug - debugging commands");
|
||||||
|
m_log.Error(" packet 0..255 - print incoming/outgoing packets (0=off)");
|
||||||
m_log.Error("load-xml [filename] - load prims from XML");
|
m_log.Error("load-xml [filename] - load prims from XML");
|
||||||
m_log.Error("save-xml [filename] - save prims to XML");
|
m_log.Error("save-xml [filename] - save prims to XML");
|
||||||
m_log.Error("script - manually trigger scripts? or script commands?");
|
m_log.Error("script - manually trigger scripts? or script commands?");
|
||||||
|
@ -555,6 +564,55 @@ namespace OpenSim
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void DebugPacket(int newDebug)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < m_localScenes.Count; i++)
|
||||||
|
{
|
||||||
|
Scene scene = m_localScenes[i];
|
||||||
|
foreach (EntityBase entity in scene.Entities.Values)
|
||||||
|
{
|
||||||
|
if (entity is ScenePresence)
|
||||||
|
{
|
||||||
|
ScenePresence scenePrescence = entity as ScenePresence;
|
||||||
|
if (!scenePrescence.childAgent)
|
||||||
|
{
|
||||||
|
m_log.Error(String.Format("Packet debug for {0} {1} set to {2}",
|
||||||
|
scenePrescence.Firstname, scenePrescence.Lastname,
|
||||||
|
newDebug));
|
||||||
|
scenePrescence.ControllingClient.SetDebug(newDebug);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public void Debug(string[] args)
|
||||||
|
{
|
||||||
|
switch(args[0])
|
||||||
|
{
|
||||||
|
case "packet":
|
||||||
|
if (args.Length > 1)
|
||||||
|
{
|
||||||
|
int newDebug;
|
||||||
|
if (int.TryParse(args[1], out newDebug))
|
||||||
|
{
|
||||||
|
DebugPacket(newDebug);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_log.Error("packet debug should be 0..2");
|
||||||
|
}
|
||||||
|
System.Console.WriteLine("New packet debug: " + newDebug.ToString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
m_log.Error("Unknown debug");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Outputs to the console information about the region
|
/// Outputs to the console information about the region
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -62,13 +62,6 @@ namespace OpenSim.Region.ClientStack
|
||||||
protected override void ProcessInPacket(Packet Pack)
|
protected override void ProcessInPacket(Packet Pack)
|
||||||
{
|
{
|
||||||
ack_pack(Pack);
|
ack_pack(Pack);
|
||||||
if (debug)
|
|
||||||
{
|
|
||||||
if (Pack.Type != PacketType.AgentUpdate)
|
|
||||||
{
|
|
||||||
Console.WriteLine(CircuitCode + ":IN: " + Pack.Type.ToString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.ProcessPacketMethod(Pack))
|
if (this.ProcessPacketMethod(Pack))
|
||||||
{
|
{
|
||||||
|
|
|
@ -70,7 +70,7 @@ namespace OpenSim.Region.ClientStack
|
||||||
|
|
||||||
//private AgentAssetUpload UploadAssets;
|
//private AgentAssetUpload UploadAssets;
|
||||||
private LLUUID newAssetFolder = LLUUID.Zero;
|
private LLUUID newAssetFolder = LLUUID.Zero;
|
||||||
private bool debug = false;
|
private int debug = 0;
|
||||||
protected IScene m_scene;
|
protected IScene m_scene;
|
||||||
private Dictionary<uint, ClientView> m_clientThreads;
|
private Dictionary<uint, ClientView> m_clientThreads;
|
||||||
private AssetCache m_assetCache;
|
private AssetCache m_assetCache;
|
||||||
|
@ -116,6 +116,11 @@ namespace OpenSim.Region.ClientStack
|
||||||
ClientThread.Start();
|
ClientThread.Start();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SetDebug(int newDebug)
|
||||||
|
{
|
||||||
|
debug = newDebug;
|
||||||
|
}
|
||||||
|
|
||||||
# region Client Methods
|
# region Client Methods
|
||||||
|
|
||||||
public void KillClient()
|
public void KillClient()
|
||||||
|
@ -192,6 +197,31 @@ namespace OpenSim.Region.ClientStack
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void DebugPacket(string direction, Packet packet)
|
||||||
|
{
|
||||||
|
if (debug > 0) {
|
||||||
|
string info;
|
||||||
|
if (debug < 255 && packet.Type == PacketType.AgentUpdate)
|
||||||
|
return;
|
||||||
|
if (debug < 254 && packet.Type == PacketType.ViewerEffect)
|
||||||
|
return;
|
||||||
|
if (debug < 253 && (
|
||||||
|
packet.Type == PacketType.CompletePingCheck ||
|
||||||
|
packet.Type == PacketType.StartPingCheck
|
||||||
|
) )
|
||||||
|
return;
|
||||||
|
if (debug < 252 && packet.Type == PacketType.PacketAck)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (debug > 1) {
|
||||||
|
info = packet.ToString();
|
||||||
|
} else {
|
||||||
|
info = packet.Type.ToString();
|
||||||
|
}
|
||||||
|
Console.WriteLine(CircuitCode + ":" + direction + ": " + info);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected virtual void ClientLoop()
|
protected virtual void ClientLoop()
|
||||||
{
|
{
|
||||||
MainLog.Instance.Verbose("OpenSimClient.cs:ClientLoop() - Entered loop");
|
MainLog.Instance.Verbose("OpenSimClient.cs:ClientLoop() - Entered loop");
|
||||||
|
@ -205,11 +235,13 @@ namespace OpenSim.Region.ClientStack
|
||||||
{
|
{
|
||||||
packetsReceived++;
|
packetsReceived++;
|
||||||
}
|
}
|
||||||
|
DebugPacket("IN", nextPacket.Packet);
|
||||||
ProcessInPacket(nextPacket.Packet);
|
ProcessInPacket(nextPacket.Packet);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//is a out going packet
|
//is a out going packet
|
||||||
|
DebugPacket("OUT", nextPacket.Packet);
|
||||||
ProcessOutPacket(nextPacket.Packet);
|
ProcessOutPacket(nextPacket.Packet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,8 +71,6 @@ namespace OpenSim.Region.ClientStack
|
||||||
// Keep track of when this packet was sent out
|
// Keep track of when this packet was sent out
|
||||||
Pack.TickCount = System.Environment.TickCount;
|
Pack.TickCount = System.Environment.TickCount;
|
||||||
|
|
||||||
// Console.WriteLine(CircuitCode + ":OUT: " + Pack.Type.ToString());
|
|
||||||
|
|
||||||
if (!Pack.Header.Resent)
|
if (!Pack.Header.Resent)
|
||||||
{
|
{
|
||||||
// Set the sequence number
|
// Set the sequence number
|
||||||
|
|
|
@ -227,5 +227,6 @@ namespace SimpleApp
|
||||||
|
|
||||||
public void SendViewerTime(int phase) { }
|
public void SendViewerTime(int phase) { }
|
||||||
public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID) { }
|
public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID) { }
|
||||||
|
public void SetDebug(int newDebug) { }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue